<feed xmlns='http://www.w3.org/2005/Atom'>
<title>xenia/xenia-build, branch master</title>
<subtitle>Xbox 360 emulator</subtitle>
<link rel='alternate' type='text/html' href='https://git.dog6.net/xenia/'/>
<entry>
<title>[Build] Replace spirv-remap with spirv-opt --canonicalize-ids</title>
<updated>2026-01-04T13:53:52+00:00</updated>
<author>
<name>Triang3l</name>
<email>triang3l@yandex.ru</email>
</author>
<published>2026-01-04T13:53:52+00:00</published>
<link rel='alternate' type='text/html' href='https://git.dog6.net/xenia/commit/?id=ca34a022a52f86d0e46a1cae50d05ecf8be611d4'/>
<id>ca34a022a52f86d0e46a1cae50d05ecf8be611d4</id>
<content type='text'>
`spirv-remap` is not present in modern Vulkan SDK versions, it was replaced
with the `--canonicalize-ids` pass in `spirv-opt`.

Overall, canonicalization provides a significant compression improvement,
which is important considering that currently Xenia is distributed in a ZIP
archive and contains many very similar shaders.

With normal DEFLATE compression, canonicalization reduced the size of a ZIP
with `xenia.exe` from 3.54 MB to 3.45 MB in a test done before committing.

Also disable stripping of debug information from shaders, which apparently
was among what `spirv-remap` was doing with `--do-everything`, as binding
and uniform buffer member names heavily aid in debugging in RenderDoc.

Partially integrated from #2329.

Co-authored-by: Herman S. &lt;429230+has207@users.noreply.github.com&gt;
Co-authored-by: Gliniak &lt;Gliniak93@gmail.com&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
`spirv-remap` is not present in modern Vulkan SDK versions, it was replaced
with the `--canonicalize-ids` pass in `spirv-opt`.

Overall, canonicalization provides a significant compression improvement,
which is important considering that currently Xenia is distributed in a ZIP
archive and contains many very similar shaders.

With normal DEFLATE compression, canonicalization reduced the size of a ZIP
with `xenia.exe` from 3.54 MB to 3.45 MB in a test done before committing.

Also disable stripping of debug information from shaders, which apparently
was among what `spirv-remap` was doing with `--do-everything`, as binding
and uniform buffer member names heavily aid in debugging in RenderDoc.

Partially integrated from #2329.

Co-authored-by: Herman S. &lt;429230+has207@users.noreply.github.com&gt;
Co-authored-by: Gliniak &lt;Gliniak93@gmail.com&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>[GPU/UI] XeSL readability improvements + float suffix</title>
<updated>2025-08-19T18:36:06+00:00</updated>
<author>
<name>Triang3l</name>
<email>triang3l@yandex.ru</email>
</author>
<published>2025-08-19T18:36:06+00:00</published>
<link rel='alternate' type='text/html' href='https://git.dog6.net/xenia/commit/?id=04d5c40d0dc23e14e3c6015fd37fa8f3c09a0677'/>
<id>04d5c40d0dc23e14e3c6015fd37fa8f3c09a0677</id>
<content type='text'>
Use the _xe suffix instead of the xesl_ prefix for quicker visual
recognition of identifiers, also switch to snake_case for consistency.

Also add the f suffix to float32 literals because the Metal Shading
Language is based on C++.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Use the _xe suffix instead of the xesl_ prefix for quicker visual
recognition of identifiers, also switch to snake_case for consistency.

Also add the f suffix to float32 literals because the Metal Shading
Language is based on C++.
</pre>
</div>
</content>
</entry>
<entry>
<title>[Build] Locate FXC among Windows SDK architectures and versions</title>
<updated>2025-08-19T17:48:26+00:00</updated>
<author>
<name>Triang3l</name>
<email>triang3l@yandex.ru</email>
</author>
<published>2025-08-19T17:48:26+00:00</published>
<link rel='alternate' type='text/html' href='https://git.dog6.net/xenia/commit/?id=3b4b04c371967cb739c17d934e6032042e7c1bbe'/>
<id>3b4b04c371967cb739c17d934e6032042e7c1bbe</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>[Build] Add parallel PPC test generation</title>
<updated>2023-02-06T02:56:37+00:00</updated>
<author>
<name>Wunkolo</name>
<email>Wunkolo@gmail.com</email>
</author>
<published>2023-02-05T23:14:48+00:00</published>
<link rel='alternate' type='text/html' href='https://git.dog6.net/xenia/commit/?id=f357f26eaef52c6d4c9aa69a9f069c00139da9fb'/>
<id>f357f26eaef52c6d4c9aa69a9f069c00139da9fb</id>
<content type='text'>
Utilizes `multiprocessing` to allow for multiple power-pc assembly tests
to be generated in parallel.

Some results on my i9-11900k(8c/16t):

Before:
```
Measure-Command {.\xb gentests}

Days              : 0
Hours             : 0
Minutes           : 0
Seconds           : 11
Milliseconds      : 200
Ticks             : 112007585
TotalDays         : 0.000129638408564815
TotalHours        : 0.00311132180555556
TotalMinutes      : 0.186679308333333
TotalSeconds      : 11.2007585
TotalMilliseconds : 11200.7585
```

After:
```
Measure-Command {.\xb gentests}

Days              : 0
Hours             : 0
Minutes           : 0
Seconds           : 5
Milliseconds      : 426
Ticks             : 54265895
TotalDays         : 6.28077488425926E-05
TotalHours        : 0.00150738597222222
TotalMinutes      : 0.0904431583333333
TotalSeconds      : 5.4265895
TotalMilliseconds : 5426.5895
```

This is an over **x2** speedup!
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Utilizes `multiprocessing` to allow for multiple power-pc assembly tests
to be generated in parallel.

Some results on my i9-11900k(8c/16t):

Before:
```
Measure-Command {.\xb gentests}

Days              : 0
Hours             : 0
Minutes           : 0
Seconds           : 11
Milliseconds      : 200
Ticks             : 112007585
TotalDays         : 0.000129638408564815
TotalHours        : 0.00311132180555556
TotalMinutes      : 0.186679308333333
TotalSeconds      : 11.2007585
TotalMilliseconds : 11200.7585
```

After:
```
Measure-Command {.\xb gentests}

Days              : 0
Hours             : 0
Minutes           : 0
Seconds           : 5
Milliseconds      : 426
Ticks             : 54265895
TotalDays         : 6.28077488425926E-05
TotalHours        : 0.00150738597222222
TotalMinutes      : 0.0904431583333333
TotalSeconds      : 5.4265895
TotalMilliseconds : 5426.5895
```

This is an over **x2** speedup!
</pre>
</div>
</content>
</entry>
<entry>
<title>moved vswhere to tools directory</title>
<updated>2022-12-28T20:17:24+00:00</updated>
<author>
<name>p01arst0rm</name>
<email>polar@ever3st.com</email>
</author>
<published>2022-12-06T20:05:38+00:00</published>
<link rel='alternate' type='text/html' href='https://git.dog6.net/xenia/commit/?id=a1bb6cc142c26e4c815e2bb85cf836765e7810a1'/>
<id>a1bb6cc142c26e4c815e2bb85cf836765e7810a1</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>Python/xenia-build/xb fixes</title>
<updated>2022-07-21T13:31:35+00:00</updated>
<author>
<name>Margen67</name>
<email>Margen67@users.noreply.github.com</email>
</author>
<published>2022-03-09T15:07:46+00:00</published>
<link rel='alternate' type='text/html' href='https://git.dog6.net/xenia/commit/?id=74d83e4af8208417c8af33d5fbab87ab1606f15a'/>
<id>74d83e4af8208417c8af33d5fbab87ab1606f15a</id>
<content type='text'>
Use variable for Python version to make upgrading easier.
xb.bat:
 Update copyright date.
 Add candidate paths.
xb.ps1
 Properly use found python executable.
 More consistency with .bat.
 Don't spew unnecessary errors, etc.
 EOF newline.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Use variable for Python version to make upgrading easier.
xb.bat:
 Update copyright date.
 Add candidate paths.
xb.ps1
 Properly use found python executable.
 More consistency with .bat.
 Don't spew unnecessary errors, etc.
 EOF newline.
</pre>
</div>
</content>
</entry>
<entry>
<title>[xenia-build] Check for clang-format 14</title>
<updated>2022-07-18T00:57:37+00:00</updated>
<author>
<name>Joel Linn</name>
<email>jl@conductive.de</email>
</author>
<published>2022-07-17T16:54:21+00:00</published>
<link rel='alternate' type='text/html' href='https://git.dog6.net/xenia/commit/?id=a41770acc59e6f9955d6b81e14054f4cb5c0506e'/>
<id>a41770acc59e6f9955d6b81e14054f4cb5c0506e</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>[xenia-build] Report premake errors via exit code</title>
<updated>2022-07-18T00:57:37+00:00</updated>
<author>
<name>Joel Linn</name>
<email>jl@conductive.de</email>
</author>
<published>2022-07-16T09:09:16+00:00</published>
<link rel='alternate' type='text/html' href='https://git.dog6.net/xenia/commit/?id=846fedfa47cf9e3f21ba1718ab806f04734cb803'/>
<id>846fedfa47cf9e3f21ba1718ab806f04734cb803</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>[UI] Windows: Disable rounded corners</title>
<updated>2022-05-05T18:46:20+00:00</updated>
<author>
<name>Triang3l</name>
<email>triang3l@yandex.ru</email>
</author>
<published>2022-05-05T18:46:20+00:00</published>
<link rel='alternate' type='text/html' href='https://git.dog6.net/xenia/commit/?id=5875f6ab3181fef2120cb33d56d58ec79cb7ee82'/>
<id>5875f6ab3181fef2120cb33d56d58ec79cb7ee82</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>[GPU] XeSL host depth store and VS passthrough shaders</title>
<updated>2022-03-27T13:15:53+00:00</updated>
<author>
<name>Triang3l</name>
<email>triang3l@yandex.ru</email>
</author>
<published>2022-03-27T13:15:53+00:00</published>
<link rel='alternate' type='text/html' href='https://git.dog6.net/xenia/commit/?id=3a07559df90169d399f010e6a3493c85353066e6'/>
<id>3a07559df90169d399f010e6a3493c85353066e6</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
</feed>
