<feed xmlns='http://www.w3.org/2005/Atom'>
<title>slang.git/examples, branch master</title>
<subtitle>Making it easier to work with shaders</subtitle>
<id>https://git.yummers.dev/slang.git/atom?h=master</id>
<link rel='self' href='https://git.yummers.dev/slang.git/atom?h=master'/>
<link rel='alternate' type='text/html' href='https://git.yummers.dev/slang.git/'/>
<updated>2025-08-26T18:01:07+00:00</updated>
<entry>
<title>Update slang-rhi deps for gfx-unit-test (#8237)</title>
<updated>2025-08-26T18:01:07+00:00</updated>
<author>
<name>Gangzheng Tong</name>
<email>tonggangzheng@gmail.com</email>
</author>
<published>2025-08-26T18:01:07+00:00</published>
<link rel='alternate' type='text/html' href='https://git.yummers.dev/slang.git/commit/?id=0b87355f946b9a0f8b7fa9225369dade3d5bf84a'/>
<id>urn:sha1:0b87355f946b9a0f8b7fa9225369dade3d5bf84a</id>
<content type='text'>
This PR marks the `slang-rhi` a required dependecy for `platform` and
`gfx-unit-test`, and only build them when `SLANG_ENABLE_SLANG_RHI=ON`.
This should allow the slang still to be built without those tests
components when `SLANG_ENABLE_SLANG_RHI=OFF`.

---------

Co-authored-by: slangbot &lt;ellieh+slangbot@nvidia.com&gt;
Co-authored-by: slangbot &lt;186143334+slangbot@users.noreply.github.com&gt;</content>
</entry>
<entry>
<title>Enable debug-layers for examples when not using test-mode (#8024)</title>
<updated>2025-08-01T17:13:00+00:00</updated>
<author>
<name>Jay Kwak</name>
<email>82421531+jkwak-work@users.noreply.github.com</email>
</author>
<published>2025-08-01T17:13:00+00:00</published>
<link rel='alternate' type='text/html' href='https://git.yummers.dev/slang.git/commit/?id=ef743e7166d3e6ada04c1ac9f68c05abe6884c0a'/>
<id>urn:sha1:ef743e7166d3e6ada04c1ac9f68c05abe6884c0a</id>
<content type='text'>
* Enable debug-layers for examples when not using test-mode

* simplify in test mode

* format code (#83)

Co-authored-by: slangbot &lt;186143334+slangbot@users.noreply.github.com&gt;

---------

Co-authored-by: slangbot &lt;ellieh+slangbot@nvidia.com&gt;
Co-authored-by: slangbot &lt;186143334+slangbot@users.noreply.github.com&gt;</content>
</entry>
<entry>
<title>Add command-line arguments to examples (#7835)</title>
<updated>2025-07-22T02:15:07+00:00</updated>
<author>
<name>Jay Kwak</name>
<email>82421531+jkwak-work@users.noreply.github.com</email>
</author>
<published>2025-07-22T02:15:07+00:00</published>
<link rel='alternate' type='text/html' href='https://git.yummers.dev/slang.git/commit/?id=13dd01489efd89268d15751c5299e5783015bbcd'/>
<id>urn:sha1:13dd01489efd89268d15751c5299e5783015bbcd</id>
<content type='text'>
* Add command-line arguments to triangle example

- Add -h/--help flag to show usage information
- Add -api flag to select rendering API (d3d11 &lt; /dev/null | d3d12|vulkan|metal|cpu|cuda|webgpu)
- Platform-specific API availability (D3D on Windows, Metal on macOS)
- Output works for both console and WIN32 applications</content>
</entry>
<entry>
<title>Configure the surface with right format (#7710)</title>
<updated>2025-07-11T03:55:15+00:00</updated>
<author>
<name>Gangzheng Tong</name>
<email>tonggangzheng@gmail.com</email>
</author>
<published>2025-07-11T03:55:15+00:00</published>
<link rel='alternate' type='text/html' href='https://git.yummers.dev/slang.git/commit/?id=1eb62804b2c2c1acff94558acc648bb62ea7d051'/>
<id>urn:sha1:1eb62804b2c2c1acff94558acc648bb62ea7d051</id>
<content type='text'>
</content>
</entry>
<entry>
<title>Convert gfx unit tests and examples to use slang-rhi (#7577)</title>
<updated>2025-07-09T06:44:56+00:00</updated>
<author>
<name>Gangzheng Tong</name>
<email>tonggangzheng@gmail.com</email>
</author>
<published>2025-07-09T06:44:56+00:00</published>
<link rel='alternate' type='text/html' href='https://git.yummers.dev/slang.git/commit/?id=43d0c2100ef1a5df4b54525e50eb29fe7c39ec16'/>
<id>urn:sha1:43d0c2100ef1a5df4b54525e50eb29fe7c39ec16</id>
<content type='text'>
* Port first gfx unit test to slang-rhi

* port triangle example to use slang-rhi

* port platform-test to slang-rhi

* Update platform-test to throttle mouse move events

* port gpu-printing example to use slang-rhi

* port model-viewer example to use slang-rhi

* port ray-tracing example to use slang-rhi

* port ray-tracing pipeline example to use slang-rhi

* port reflection parameter blocks example to use slang-rhi

* port shader-object example to use slang-rhi

* port shader-toy example to use slang-rhi

* Port most of tests to slang-rhi

* port link-time-constant-array-size to use slang-rhi

* Fix tests and find matching tests in slang-rhi

* port autodiff-texture

* remove gfx target; port nv-aftermath-example

* update include path for shader-cursor.h

* Disabled 2 more ported tests

* fix build error

* remove gfx test

* put slang-rhi (static-lib) before slang (shared)

* format code (#7621)

Co-authored-by: slangbot &lt;186143334+slangbot@users.noreply.github.com&gt;

* add debug callback

* format code (#7649)

Co-authored-by: slangbot &lt;186143334+slangbot@users.noreply.github.com&gt;

* Address review comments; revert back to use SLANG_CHECK_MSG

---------

Co-authored-by: slangbot &lt;ellieh+slangbot@nvidia.com&gt;
Co-authored-by: slangbot &lt;186143334+slangbot@users.noreply.github.com&gt;</content>
</entry>
<entry>
<title>Fix a bug in examples/reflection-api (#7652)</title>
<updated>2025-07-08T20:38:32+00:00</updated>
<author>
<name>Theresa Foley</name>
<email>10618364+tangent-vector@users.noreply.github.com</email>
</author>
<published>2025-07-08T20:38:32+00:00</published>
<link rel='alternate' type='text/html' href='https://git.yummers.dev/slang.git/commit/?id=e52885347076f3dfbf96cb5b898fabf9b4c9562d'/>
<id>urn:sha1:e52885347076f3dfbf96cb5b898fabf9b4c9562d</id>
<content type='text'>
The bug here is subtle enough that it was missed during development of the example, and it it unlikely to be hit by typical applications.
All that said, it is good to ensure that this example does things correctly, since we are pointing developers to it as an example of how to correctly extract information using the reflection API.

In order to get the bug to surface, one can target Vulkan/SPIR-V using input code like:

```
struct Small
{
    float4 v;
    Texture2D t;
}
struct Big
{
    float4 u;
    ConstantBuffer&lt;Small&gt; smallCB;
    ParameterBlock&lt;Small&gt; smallPB;
}
ConstantBuffer&lt;Big&gt; bigCB;
```

Without this change, the example would display an incorrect cumulative offset for `bigCB.smallPB.t`.
The incorrectly-computed offset showed that the `binding`s consumed by `bigCB.smallCB` (for both its constant buffer and its `t` field) were being included in the offset computed for the `t` within the parameter block (when the outer parameter block should have caused those offsets to be ignored).

The underlying bug in the example is that when recursively printing the cumulative offsets for the "container" and "content" part of a buffer/block, the example was including the buffer/block in the `AccessPath` when printing cumulative offsets for the "content" part, but not for the "container" part.
The fix is just to shift the order of things and use the same `AccessPath` when printing both the "container" and "content" parts of a buffer/block.

It is difficult to be 100% certain that this change is correct, and that there are no corner cases where the new code gives unexpected/wrong results.
I have manually tested the example code by throwing a variety of shader parameter declarations at it, and the new logic seems robust.

We are probably at the point where the code of this example probably needs to be turned into a stand-alone tool that we can use as part of our automated testing.
That will have to wait for a future change; the goal of this change is to just get the simple bug fixe checked in.</content>
</entry>
<entry>
<title>Add MLP training examples. (#7550)</title>
<updated>2025-06-30T21:32:50+00:00</updated>
<author>
<name>Yong He</name>
<email>yonghe@outlook.com</email>
</author>
<published>2025-06-30T21:32:50+00:00</published>
<link rel='alternate' type='text/html' href='https://git.yummers.dev/slang.git/commit/?id=f28f67d988158d6c46f7ffe967152f98d32a37b2'/>
<id>urn:sha1:f28f67d988158d6c46f7ffe967152f98d32a37b2</id>
<content type='text'>
* Add MLP training examples.

* Formatting fix.

* Fix.

* Improve documentation on coopvector.

* Improve doc.

* Update doc.

* Fix typo.

* Cleanup shader.

* Cleanup.

* Fix test.

* Fix type check recursion.

* Fix.

* Fix.

* Fix override check.</content>
</entry>
<entry>
<title>fix the break to make sure only valid data will be accessed (#7148)</title>
<updated>2025-05-17T03:59:55+00:00</updated>
<author>
<name>Gangzheng Tong</name>
<email>tonggangzheng@gmail.com</email>
</author>
<published>2025-05-17T03:59:55+00:00</published>
<link rel='alternate' type='text/html' href='https://git.yummers.dev/slang.git/commit/?id=49667272add1963c6937a63898de6881b2e455aa'/>
<id>urn:sha1:49667272add1963c6937a63898de6881b2e455aa</id>
<content type='text'>
</content>
</entry>
<entry>
<title>Enable Windows full debug testsuite in CI (#7085)</title>
<updated>2025-05-16T21:51:46+00:00</updated>
<author>
<name>Gangzheng Tong</name>
<email>tonggangzheng@gmail.com</email>
</author>
<published>2025-05-16T21:51:46+00:00</published>
<link rel='alternate' type='text/html' href='https://git.yummers.dev/slang.git/commit/?id=8f20632a0ba45c3bfada293842e55129949a2ae9'/>
<id>urn:sha1:8f20632a0ba45c3bfada293842e55129949a2ae9</id>
<content type='text'>
* Unify Debug Layer Control Logic and Add Disable Option for Debug Builds

This PR refactors and unifies the debug layer control logic in slang-test.
A new `-disable-debug-layers` option is introduced, allowing debug builds to skip enabling the validation (debug) layer.
This is currently needed to ensure stability in the debug test suite.

Previously, different toggles such as ENABLE_VALIDATION_LAYER, ENABLE_DEBUG_LAYER, and debugLayerEnabled were used inconsistently across different components of slang-test. This PR standardizes the logic by using a single variable, debugLayerEnabled, to control the enabling/disabling of the debug layer internally.

Notes:
By default, the debug/validation layer is enabled in debug builds and is not supported in release builds of slang-test.

Fixes: #7132

* Disable spirv-opt for the DebugFunctionDefinition issue

* Run debug build only in GCP machines

* Fix VUID-vkCmdPipelineBarrier-pBufferMemoryBarriers-02818

dstAcessMask can't include VK_ACCESS_TRANSFER_READ_BIT when stage mask
has  VK_PIPELINE_STAGE_RAY_TRACING_SHADER_BIT_KHR

* Set failed retry limit to 32

---------

Co-authored-by: slangbot &lt;ellieh+slangbot@nvidia.com&gt;
Co-authored-by: slangbot &lt;186143334+slangbot@users.noreply.github.com&gt;</content>
</entry>
<entry>
<title>Remove compiler option no longer needed from the example (#7084)</title>
<updated>2025-05-15T04:29:12+00:00</updated>
<author>
<name>Jay Kwak</name>
<email>82421531+jkwak-work@users.noreply.github.com</email>
</author>
<published>2025-05-15T04:29:12+00:00</published>
<link rel='alternate' type='text/html' href='https://git.yummers.dev/slang.git/commit/?id=7fa8c35383ed4437cb9acb1670ca6db749173d86'/>
<id>urn:sha1:7fa8c35383ed4437cb9acb1670ca6db749173d86</id>
<content type='text'>
</content>
</entry>
</feed>
