739 Commits

Author SHA1 Message Date
kbz_8 b090a070c8 Merge branch 'master' into indev 2026-05-13 14:28:58 +02:00
kbJeff-8 069f8af9d6 [BOT] update dependencies 2026-05-13 14:17:25 +02:00
kbz_8 8b952f14c5 temp fix 2026-05-11 14:05:10 +02:00
kbJeff-8 cfc3fccac4 [BOT] update dependencies 2026-05-11 14:05:10 +02:00
kbJeff-8 f691ce6890 [BOT] update dependencies 2026-05-11 14:05:10 +02:00
kbJeff-8 fb0eecde00 [BOT] update dependencies 2026-05-11 14:05:10 +02:00
kbJeff-8 f65b8a2aef [BOT] update dependencies 2026-05-11 14:05:10 +02:00
kbz_8 552cc33ba3 temp fix 2026-05-11 13:55:59 +02:00
kbJeff-8 d1f5b7c68e [BOT] update dependencies 2026-05-10 12:33:26 +02:00
kbJeff-8 e3ab91c7eb [BOT] update dependencies 2026-04-19 18:24:23 +02:00
kbJeff-8 6f0beebdf9 [BOT] update dependencies 2026-04-14 02:47:02 +02:00
kbJeff-8 f9f4fc6425 [BOT] update dependencies 2026-04-06 22:23:08 +02:00
0verLighT 59b3a297f9 chore: rm wrap_mode force-fallback
sdl2 warp should be used only if the system does not have sdl2 dependency
2026-03-24 23:14:42 +01:00
kbz_8 790e24ebdb Update meson.build 2026-03-24 23:14:42 +01:00
0verLighT 3a2563a7f5 chore: update meson.build 2026-03-24 23:14:42 +01:00
kbz_8 cf491fc56d fix 2026-03-23 21:45:36 +01:00
kbz_8 492365f6dd swithing to manual surface management 2026-03-23 21:45:36 +01:00
kbz_8 564942ad35 fix 2026-03-23 21:45:36 +01:00
kbJeff-8 2751206578 [BOT] update dependencies 2026-03-23 21:45:36 +01:00
kbJeff-8 002c35ccdb [BOT] update dependencies 2026-03-23 21:45:36 +01:00
kbJeff-8 36e63bbbe7 [BOT] update dependencies 2026-03-08 11:42:50 +01:00
kbz_8 3a11c1d350 fixing file access 2026-03-03 12:10:18 +01:00
kbJeff-8 74613d230f [BOT] update dependencies 2026-03-03 12:10:18 +01:00
kbJeff-8 f1e89ca90e [BOT] update dependencies 2026-02-08 12:13:11 +01:00
kbz_8 1566fbfc00 fixing image resize 2026-02-05 15:18:03 +01:00
kbz_8 6c1400e62c azy, 7h du matin, je sais pas écrire 2026-02-04 07:32:55 +01:00
kbz_8 25fb5285f7 fixed issue with default font loading 2026-02-04 07:32:55 +01:00
Yannis 87059f8ca3 Check if font file exists 2026-02-04 07:32:55 +01:00
kbz_8 db299c6930 Indev (#202) 2026-02-03 12:10:08 +01:00
kbz_8 ebfc00d015 fixing put pixel resize issue (#201) 2026-02-03 12:05:37 +01:00
kbz_8 7639c27df4 fixing put pixel resize issue 2026-02-03 11:58:06 +01:00
kbz_8 2d9f193a72 Bump actions/checkout from 5 to 6 (#200)
Bumps [actions/checkout](https://github.com/actions/checkout) from 5 to
6.
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a
href="https://github.com/actions/checkout/releases">actions/checkout's
releases</a>.</em></p>
<blockquote>
<h2>v6.0.0</h2>
<h2>What's Changed</h2>
<ul>
<li>Update README to include Node.js 24 support details and requirements
by <a href="https://github.com/salmanmkc"><code>@​salmanmkc</code></a>
in <a
href="https://redirect.github.com/actions/checkout/pull/2248">actions/checkout#2248</a></li>
<li>Persist creds to a separate file by <a
href="https://github.com/ericsciple"><code>@​ericsciple</code></a> in <a
href="https://redirect.github.com/actions/checkout/pull/2286">actions/checkout#2286</a></li>
<li>v6-beta by <a
href="https://github.com/ericsciple"><code>@​ericsciple</code></a> in <a
href="https://redirect.github.com/actions/checkout/pull/2298">actions/checkout#2298</a></li>
<li>update readme/changelog for v6 by <a
href="https://github.com/ericsciple"><code>@​ericsciple</code></a> in <a
href="https://redirect.github.com/actions/checkout/pull/2311">actions/checkout#2311</a></li>
</ul>
<p><strong>Full Changelog</strong>: <a
href="https://github.com/actions/checkout/compare/v5.0.0...v6.0.0">https://github.com/actions/checkout/compare/v5.0.0...v6.0.0</a></p>
<h2>v6-beta</h2>
<h2>What's Changed</h2>
<p>Updated persist-credentials to store the credentials under
<code>$RUNNER_TEMP</code> instead of directly in the local git
config.</p>
<p>This requires a minimum Actions Runner version of <a
href="https://github.com/actions/runner/releases/tag/v2.329.0">v2.329.0</a>
to access the persisted credentials for <a
href="https://docs.github.com/en/actions/tutorials/use-containerized-services/create-a-docker-container-action">Docker
container action</a> scenarios.</p>
<h2>v5.0.1</h2>
<h2>What's Changed</h2>
<ul>
<li>Port v6 cleanup to v5 by <a
href="https://github.com/ericsciple"><code>@​ericsciple</code></a> in <a
href="https://redirect.github.com/actions/checkout/pull/2301">actions/checkout#2301</a></li>
</ul>
<p><strong>Full Changelog</strong>: <a
href="https://github.com/actions/checkout/compare/v5...v5.0.1">https://github.com/actions/checkout/compare/v5...v5.0.1</a></p>
</blockquote>
</details>
<details>
<summary>Changelog</summary>
<p><em>Sourced from <a
href="https://github.com/actions/checkout/blob/main/CHANGELOG.md">actions/checkout's
changelog</a>.</em></p>
<blockquote>
<h1>Changelog</h1>
<h2>v6.0.2</h2>
<ul>
<li>Fix tag handling: preserve annotations and explicit fetch-tags by <a
href="https://github.com/ericsciple"><code>@​ericsciple</code></a> in <a
href="https://redirect.github.com/actions/checkout/pull/2356">actions/checkout#2356</a></li>
</ul>
<h2>v6.0.1</h2>
<ul>
<li>Add worktree support for persist-credentials includeIf by <a
href="https://github.com/ericsciple"><code>@​ericsciple</code></a> in <a
href="https://redirect.github.com/actions/checkout/pull/2327">actions/checkout#2327</a></li>
</ul>
<h2>v6.0.0</h2>
<ul>
<li>Persist creds to a separate file by <a
href="https://github.com/ericsciple"><code>@​ericsciple</code></a> in <a
href="https://redirect.github.com/actions/checkout/pull/2286">actions/checkout#2286</a></li>
<li>Update README to include Node.js 24 support details and requirements
by <a href="https://github.com/salmanmkc"><code>@​salmanmkc</code></a>
in <a
href="https://redirect.github.com/actions/checkout/pull/2248">actions/checkout#2248</a></li>
</ul>
<h2>v5.0.1</h2>
<ul>
<li>Port v6 cleanup to v5 by <a
href="https://github.com/ericsciple"><code>@​ericsciple</code></a> in <a
href="https://redirect.github.com/actions/checkout/pull/2301">actions/checkout#2301</a></li>
</ul>
<h2>v5.0.0</h2>
<ul>
<li>Update actions checkout to use node 24 by <a
href="https://github.com/salmanmkc"><code>@​salmanmkc</code></a> in <a
href="https://redirect.github.com/actions/checkout/pull/2226">actions/checkout#2226</a></li>
</ul>
<h2>v4.3.1</h2>
<ul>
<li>Port v6 cleanup to v4 by <a
href="https://github.com/ericsciple"><code>@​ericsciple</code></a> in <a
href="https://redirect.github.com/actions/checkout/pull/2305">actions/checkout#2305</a></li>
</ul>
<h2>v4.3.0</h2>
<ul>
<li>docs: update README.md by <a
href="https://github.com/motss"><code>@​motss</code></a> in <a
href="https://redirect.github.com/actions/checkout/pull/1971">actions/checkout#1971</a></li>
<li>Add internal repos for checking out multiple repositories by <a
href="https://github.com/mouismail"><code>@​mouismail</code></a> in <a
href="https://redirect.github.com/actions/checkout/pull/1977">actions/checkout#1977</a></li>
<li>Documentation update - add recommended permissions to Readme by <a
href="https://github.com/benwells"><code>@​benwells</code></a> in <a
href="https://redirect.github.com/actions/checkout/pull/2043">actions/checkout#2043</a></li>
<li>Adjust positioning of user email note and permissions heading by <a
href="https://github.com/joshmgross"><code>@​joshmgross</code></a> in <a
href="https://redirect.github.com/actions/checkout/pull/2044">actions/checkout#2044</a></li>
<li>Update README.md by <a
href="https://github.com/nebuk89"><code>@​nebuk89</code></a> in <a
href="https://redirect.github.com/actions/checkout/pull/2194">actions/checkout#2194</a></li>
<li>Update CODEOWNERS for actions by <a
href="https://github.com/TingluoHuang"><code>@​TingluoHuang</code></a>
in <a
href="https://redirect.github.com/actions/checkout/pull/2224">actions/checkout#2224</a></li>
<li>Update package dependencies by <a
href="https://github.com/salmanmkc"><code>@​salmanmkc</code></a> in <a
href="https://redirect.github.com/actions/checkout/pull/2236">actions/checkout#2236</a></li>
</ul>
<h2>v4.2.2</h2>
<ul>
<li><code>url-helper.ts</code> now leverages well-known environment
variables by <a href="https://github.com/jww3"><code>@​jww3</code></a>
in <a
href="https://redirect.github.com/actions/checkout/pull/1941">actions/checkout#1941</a></li>
<li>Expand unit test coverage for <code>isGhes</code> by <a
href="https://github.com/jww3"><code>@​jww3</code></a> in <a
href="https://redirect.github.com/actions/checkout/pull/1946">actions/checkout#1946</a></li>
</ul>
<h2>v4.2.1</h2>
<ul>
<li>Check out other refs/* by commit if provided, fall back to ref by <a
href="https://github.com/orhantoy"><code>@​orhantoy</code></a> in <a
href="https://redirect.github.com/actions/checkout/pull/1924">actions/checkout#1924</a></li>
</ul>
<h2>v4.2.0</h2>
<ul>
<li>Add Ref and Commit outputs by <a
href="https://github.com/lucacome"><code>@​lucacome</code></a> in <a
href="https://redirect.github.com/actions/checkout/pull/1180">actions/checkout#1180</a></li>
<li>Dependency updates by <a
href="https://github.com/dependabot"><code>@​dependabot</code></a>- <a
href="https://redirect.github.com/actions/checkout/pull/1777">actions/checkout#1777</a>,
<a
href="https://redirect.github.com/actions/checkout/pull/1872">actions/checkout#1872</a></li>
</ul>
<h2>v4.1.7</h2>
<ul>
<li>Bump the minor-npm-dependencies group across 1 directory with 4
updates by <a
href="https://github.com/dependabot"><code>@​dependabot</code></a> in <a
href="https://redirect.github.com/actions/checkout/pull/1739">actions/checkout#1739</a></li>
<li>Bump actions/checkout from 3 to 4 by <a
href="https://github.com/dependabot"><code>@​dependabot</code></a> in <a
href="https://redirect.github.com/actions/checkout/pull/1697">actions/checkout#1697</a></li>
<li>Check out other refs/* by commit by <a
href="https://github.com/orhantoy"><code>@​orhantoy</code></a> in <a
href="https://redirect.github.com/actions/checkout/pull/1774">actions/checkout#1774</a></li>
<li>Pin actions/checkout's own workflows to a known, good, stable
version. by <a href="https://github.com/jww3"><code>@​jww3</code></a> in
<a
href="https://redirect.github.com/actions/checkout/pull/1776">actions/checkout#1776</a></li>
</ul>
<h2>v4.1.6</h2>
<ul>
<li>Check platform to set archive extension appropriately by <a
href="https://github.com/cory-miller"><code>@​cory-miller</code></a> in
<a
href="https://redirect.github.com/actions/checkout/pull/1732">actions/checkout#1732</a></li>
</ul>
<!-- raw HTML omitted -->
</blockquote>
<p>... (truncated)</p>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="https://github.com/actions/checkout/commit/8e8c483db84b4bee98b60c0593521ed34d9990e8"><code>8e8c483</code></a>
Clarify v6 README (<a
href="https://redirect.github.com/actions/checkout/issues/2328">#2328</a>)</li>
<li><a
href="https://github.com/actions/checkout/commit/033fa0dc0b82693d8986f1016a0ec2c5e7d9cbb1"><code>033fa0d</code></a>
Add worktree support for persist-credentials includeIf (<a
href="https://redirect.github.com/actions/checkout/issues/2327">#2327</a>)</li>
<li><a
href="https://github.com/actions/checkout/commit/c2d88d3ecc89a9ef08eebf45d9637801dcee7eb5"><code>c2d88d3</code></a>
Update all references from v5 and v4 to v6 (<a
href="https://redirect.github.com/actions/checkout/issues/2314">#2314</a>)</li>
<li><a
href="https://github.com/actions/checkout/commit/1af3b93b6815bc44a9784bd300feb67ff0d1eeb3"><code>1af3b93</code></a>
update readme/changelog for v6 (<a
href="https://redirect.github.com/actions/checkout/issues/2311">#2311</a>)</li>
<li><a
href="https://github.com/actions/checkout/commit/71cf2267d89c5cb81562390fa70a37fa40b1305e"><code>71cf226</code></a>
v6-beta (<a
href="https://redirect.github.com/actions/checkout/issues/2298">#2298</a>)</li>
<li><a
href="https://github.com/actions/checkout/commit/069c6959146423d11cd0184e6accf28f9d45f06e"><code>069c695</code></a>
Persist creds to a separate file (<a
href="https://redirect.github.com/actions/checkout/issues/2286">#2286</a>)</li>
<li><a
href="https://github.com/actions/checkout/commit/ff7abcd0c3c05ccf6adc123a8cd1fd4fb30fb493"><code>ff7abcd</code></a>
Update README to include Node.js 24 support details and requirements (<a
href="https://redirect.github.com/actions/checkout/issues/2248">#2248</a>)</li>
<li>See full diff in <a
href="https://github.com/actions/checkout/compare/v5...v6">compare
view</a></li>
</ul>
</details>
<br />


[![Dependabot compatibility
score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=actions/checkout&package-manager=github_actions&previous-version=5&new-version=6)](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores)

Dependabot will resolve any conflicts with this PR as long as you don't
alter it yourself. You can also trigger a rebase manually by commenting
`@dependabot rebase`.

[//]: # (dependabot-automerge-start)
[//]: # (dependabot-automerge-end)

---

<details>
<summary>Dependabot commands and options</summary>
<br />

You can trigger Dependabot actions by commenting on this PR:
- `@dependabot rebase` will rebase this PR
- `@dependabot recreate` will recreate this PR, overwriting any edits
that have been made to it
- `@dependabot merge` will merge this PR after your CI passes on it
- `@dependabot squash and merge` will squash and merge this PR after
your CI passes on it
- `@dependabot cancel merge` will cancel a previously requested merge
and block automerging
- `@dependabot reopen` will reopen this PR if it is closed
- `@dependabot close` will close this PR and stop Dependabot recreating
it. You can achieve the same result by closing it manually
- `@dependabot show <dependency name> ignore conditions` will show all
of the ignore conditions of the specified dependency
- `@dependabot ignore this major version` will close this PR and stop
Dependabot creating any more for this major version (unless you reopen
the PR or upgrade to it yourself)
- `@dependabot ignore this minor version` will close this PR and stop
Dependabot creating any more for this minor version (unless you reopen
the PR or upgrade to it yourself)
- `@dependabot ignore this dependency` will close this PR and stop
Dependabot creating any more for this dependency (unless you reopen the
PR or upgrade to it yourself)


</details>
2026-02-03 07:08:13 +01:00
dependabot[bot] 6aac4a71de Bump actions/checkout from 5 to 6
Bumps [actions/checkout](https://github.com/actions/checkout) from 5 to 6.
- [Release notes](https://github.com/actions/checkout/releases)
- [Changelog](https://github.com/actions/checkout/blob/main/CHANGELOG.md)
- [Commits](https://github.com/actions/checkout/compare/v5...v6)

---
updated-dependencies:
- dependency-name: actions/checkout
  dependency-version: '6'
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-02-03 03:49:46 +00:00
kbz_8 0ff3085448 update dependencies (#198)
Automated changes by
[create-pull-request](https://github.com/peter-evans/create-pull-request)
GitHub action
2026-02-01 13:45:15 +01:00
kbJeff-8 b286da89e2 [BOT] update dependencies 2026-02-01 01:07:04 +00:00
kbJeff-8 55eb31551a [BOT] update dependencies 2026-01-28 09:41:08 +01:00
dependabot[bot] 7741ed2dd4 Bump actions/setup-python from 5 to 6
Bumps [actions/setup-python](https://github.com/actions/setup-python) from 5 to 6.
- [Release notes](https://github.com/actions/setup-python/releases)
- [Commits](https://github.com/actions/setup-python/compare/v5...v6)

---
updated-dependencies:
- dependency-name: actions/setup-python
  dependency-version: '6'
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-01-28 09:41:08 +01:00
kbz_8 b09f5c39f7 fixes: windows x86 compilation error missing VKAPI_PTR (#197)
This pr fixes windows x86 compilation error (xmake and meson.build).

In runtime/Sources/Renderer/RenderCore.cpp 
```cpp
void* VKAPI_PTR VulkanAllocationFunction(void*, std::size_t size, std::size_t alignment, VkSystemAllocationScope)
	{
		return MemManager::AlignedMalloc(alignment, size);
	}

	void* VKAPI_PTR VulkanReallocationFunction(void*, void* ptr, std::size_t size, std::size_t alignment, VkSystemAllocationScope)
	{
		return MemManager::AlignedRealloc(ptr, alignment, size);
	}

	void VKAPI_PTR VulkanFreeFunction(void*, void* ptr)
	{
		MemManager::Free(ptr);
	}
```
The log of the compilation error:  
- [meson failure
log](https://github.com/0verLighT/MacroLibX/actions/runs/21409805574/job/61643508435)
- [xmake failure
log](https://github.com/0verLighT/MacroLibX/actions/runs/21412208397/job/61651747515)

In the macrolibx VKAPI_PTR was missing, On windows x86, this caused a
compilation error.


This add some features:
- New CICD for windows meson (x64, x86, MYSYS2, clang-cl) and windows
xmake x86
- Fallback for meson.build dependency SDL2 in `subprojects/SDL2.wrap`
2026-01-28 07:17:01 +01:00
0verLighT 91b93a6f10 ci(xmake): add test on x86 architecture due to a Vulkan issue (VKAPI_PTR)
Signed-off-by: 0verLighT <alexandre@0verlight.com>
2026-01-27 21:07:41 +01:00
0verLighT 26c47c3a95 fix && ci (meson): trying to fix Vulkan issue in renderCore.cpp and add some windows test based from meson wrapdb CI
Signed-off-by: 0verLighT <alexandre@0verlight.com>
2026-01-27 20:47:11 +01:00
0verLighT 28142f764f ci(windows_meson): test ci setup meson for windows
chore: add folder subprojects for download sdl2 if it's not present in pkgconfig
Signed-off-by: 0verLighT <alexandre@0verlight.com>
2026-01-27 19:47:30 +01:00
kbz_8 26ccd5eeee Few doc fixes (#194)
Also, the doc says `@param img` but declaration has `mlx_image image`
which is a mismatch, I’m not sure what to do here, so I’m leaving it
untouched.

[This page](https://macrolibx.kbz8.me/guides/text/) of the docs should
be updated too as `mlx_set_font` and `mlx_set_font_scale` don't take a
`mlx_window` anymore.
2026-01-20 19:48:15 +01:00
Luna Mira Lage 849ecbaf1f Few doc fixes 2026-01-20 18:50:29 +01:00
kbz_8 b345fbc672 Indev (#191) 2026-01-11 14:09:00 +01:00
kbz_8 bb019f20a7 Merge branch 'master' into indev 2026-01-11 14:02:39 +01:00
kbz_8 33ae4c3a37 fixing windows compilation issues, bumping version 2026-01-11 14:01:37 +01:00
Jeff 32987f0afe update dependencies (#190)
Automated changes by
[create-pull-request](https://github.com/peter-evans/create-pull-request)
GitHub action

Co-authored-by: kbJeff-8 <kbJeff-8@users.noreply.github.com>
2026-01-11 02:06:15 +01:00
kbz_8 3e82487037 Indev (#189)
Co-authored-by: 0verLighT <alexandre@0verlight.com>
2026-01-11 00:33:12 +01:00
kbz_8 b33154d846 Merge branch 'master' into indev 2026-01-11 00:28:50 +01:00
kbz_8 278e29d277 bumping version, small fixes 2026-01-11 00:27:49 +01:00
kbz_8 8ccfa0bee1 Update README.md 2026-01-11 00:24:16 +01:00
kbz_8 b0806958fe fixing small CI mistakes 2026-01-11 00:24:16 +01:00
kbz_8 7e31195b77 improving meson CI 2026-01-11 00:24:16 +01:00
0verLighT 5912aa5c12 feat(ci): add github actions for meson.build on macOS and Ubuntu 2026-01-11 00:24:16 +01:00
0verLighT e3ee9f0327 refactor(meson): delete all meson.build files in the runtime subfolders and regroup all sources in a meson.build file 2026-01-11 00:24:16 +01:00
0verLighT 807931fc8b feat(meson): adding meson.build 2026-01-11 00:24:16 +01:00
kbz_8 768dc0c1d9 Update README.md (#187) 2026-01-09 22:04:02 +01:00
kbz_8 55086a05a6 Update README.md 2026-01-09 22:03:53 +01:00
kbz_8 bef1888a79 adding Meson in mlx (#186)
This PR adds meson.build support for creating `mlx.wrap` in [meson
wrapdb](https://mesonbuild.com/Wrapdb-projects.html)
2026-01-09 21:57:25 +01:00
kbz_8 519b273a20 fixing small CI mistakes 2026-01-09 21:53:22 +01:00
kbz_8 fd8beaaf17 improving meson CI 2026-01-09 21:51:40 +01:00
0verLighT c4979ceded feat(ci): add github actions for meson.build on macOS and Ubuntu 2026-01-09 21:08:42 +01:00
0verLighT f4a1dc386a refactor(meson): delete all meson.build files in the runtime subfolders and regroup all sources in a meson.build file 2026-01-09 15:09:39 +01:00
0verLighT 83d05cc6e2 feat(meson): adding meson.build 2026-01-09 08:37:47 +01:00
kbz_8 f44c4d106c Indev (#185) 2026-01-06 11:57:45 +01:00
kbz_8 6fd5814032 updating deps 2026-01-06 11:50:25 +01:00
kbz_8 7a3a65d26c updating deps 2026-01-06 11:48:23 +01:00
kbJeff-8 c251fb81e3 [BOT] update dependencies 2025-12-21 11:29:58 +01:00
dependabot[bot] cf84449dee Bump peter-evans/create-pull-request from 7 to 8
Bumps [peter-evans/create-pull-request](https://github.com/peter-evans/create-pull-request) from 7 to 8.
- [Release notes](https://github.com/peter-evans/create-pull-request/releases)
- [Commits](https://github.com/peter-evans/create-pull-request/compare/v7...v8)

---
updated-dependencies:
- dependency-name: peter-evans/create-pull-request
  dependency-version: '8'
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-12-16 07:09:03 +01:00
dependabot[bot] 58f1e76a56 Bump actions/cache from 4 to 5
Bumps [actions/cache](https://github.com/actions/cache) from 4 to 5.
- [Release notes](https://github.com/actions/cache/releases)
- [Changelog](https://github.com/actions/cache/blob/main/RELEASES.md)
- [Commits](https://github.com/actions/cache/compare/v4...v5)

---
updated-dependencies:
- dependency-name: actions/cache
  dependency-version: '5'
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-12-16 07:08:47 +01:00
kbJeff-8 b6c7e8095f [BOT] update dependencies 2025-12-14 11:35:26 +01:00
kbJeff-8 a6a3178425 [BOT] update dependencies 2025-12-02 22:50:02 +01:00
dependabot[bot] 8c43af3ad1 Bump actions/checkout from 4 to 6
Bumps [actions/checkout](https://github.com/actions/checkout) from 4 to 6.
- [Release notes](https://github.com/actions/checkout/releases)
- [Changelog](https://github.com/actions/checkout/blob/main/CHANGELOG.md)
- [Commits](https://github.com/actions/checkout/compare/v4...v6)

---
updated-dependencies:
- dependency-name: actions/checkout
  dependency-version: '6'
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-12-02 22:50:02 +01:00
kbJeff-8 1f96fa56d8 [BOT] update dependencies 2025-12-02 22:50:02 +01:00
kbz_8 4f0d8dac67 fixing merge 2025-12-02 22:43:31 +01:00
kbJeff-8 85150693af [BOT] update dependencies 2025-11-30 12:24:25 +01:00
dependabot[bot] 56fa5ac613 Bump actions/checkout from 4 to 6
Bumps [actions/checkout](https://github.com/actions/checkout) from 4 to 6.
- [Release notes](https://github.com/actions/checkout/releases)
- [Changelog](https://github.com/actions/checkout/blob/main/CHANGELOG.md)
- [Commits](https://github.com/actions/checkout/compare/v4...v6)

---
updated-dependencies:
- dependency-name: actions/checkout
  dependency-version: '6'
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-11-25 07:18:57 +01:00
kbJeff-8 19f5a2eb2f [BOT] update dependencies 2025-11-23 01:58:07 +01:00
kbJeff-8 cb2979108b [BOT] update dependencies 2025-11-16 11:11:59 +01:00
kbJeff-8 454fcc6e65 [BOT] update dependencies 2025-11-16 11:04:56 +01:00
kbz_8 a51d391a04 fixing infinite descriptor pool creation bug (#169) 2025-11-04 20:58:41 +01:00
kbz_8 9ae3f46f2e fixing merge conflicts 2025-11-04 20:51:16 +01:00
kbz_8 4adaccf72a removing garbage collector from SDL 2025-11-04 20:38:53 +01:00
kbz_8 67523e7fb4 removing garbage file 2025-11-04 20:33:30 +01:00
kbz_8 ec019ba45c removing garbage file 2025-11-04 20:33:04 +01:00
kbz_8 ba0398092a fixing infinite descriptor pool creation bug 2025-11-04 20:32:38 +01:00
kbJeff-8 b89bacfa95 [BOT] update dependencies 2025-11-02 01:54:27 +01:00
kbJeff-8 f84e0b2312 [BOT] update dependencies 2025-10-26 14:25:11 +01:00
kbz_8 65ff11b301 actual fix 2025-10-23 08:57:41 +02:00
kbJeff-8 1f780e2a8a [BOT] update dependencies 2025-10-23 08:57:41 +02:00
kbJeff-8 06ddcf99d7 [BOT] update dependencies 2025-10-23 08:57:41 +02:00
kbz_8 ece1fc93da Merge branch 'master' into indev 2025-10-23 08:51:03 +02:00
kbz_8 04bc524ae8 update dependencies (#165)
Automated changes by
[create-pull-request](https://github.com/peter-evans/create-pull-request)
GitHub action
2025-10-23 08:37:49 +02:00
kbz_8 b63f07bfe8 actual fix 2025-10-23 08:31:58 +02:00
kbJeff-8 a40907b68f [BOT] update dependencies 2025-10-23 06:26:25 +00:00
kbz_8 9ec992d54c update dependencies (#164)
Automated changes by
[create-pull-request](https://github.com/peter-evans/create-pull-request)
GitHub action
2025-10-23 08:17:00 +02:00
kbJeff-8 a665f7c448 [BOT] update dependencies 2025-10-23 06:09:55 +00:00
kbz_8 cee944d996 Indev (#163) 2025-10-22 17:20:12 +02:00
kbz_8 493696482c fixing small mistakes 2025-10-22 17:07:33 +02:00
kbz_8 9c4aaea79f removing now useless image optimisation flag 2025-10-22 17:02:41 +02:00
kbz_8 ffc0f26701 Indev (#162)
Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-10-22 16:39:53 +02:00
kbz_8 1835db0943 fixing fetching deps CI 2025-10-22 16:33:46 +02:00
kbz_8 7c35354c44 fixing fetching deps CI 2025-10-22 16:33:46 +02:00
kbz_8 c99cf63194 fixing fetching deps CI 2025-10-22 16:33:46 +02:00
kbz_8 c5026d93dc fixing fetching deps CI 2025-10-22 16:33:46 +02:00
kbz_8 22fb83fee1 fixing fetching deps CI 2025-10-22 16:33:46 +02:00
kbz_8 c62168b0e2 fixing fetching deps CI 2025-10-22 16:33:46 +02:00
kbz_8 31cbdec371 fixing fetching deps CI 2025-10-22 16:33:46 +02:00
kbz_8 cbf185e6c5 fixing fetching deps CI 2025-10-22 16:33:46 +02:00
dependabot[bot] e5b555dbc3 Bump NcStudios/VulkanCI from 1.0 to 1.2
Bumps [NcStudios/VulkanCI](https://github.com/ncstudios/vulkanci) from 1.0 to 1.2.
- [Release notes](https://github.com/ncstudios/vulkanci/releases)
- [Commits](https://github.com/ncstudios/vulkanci/compare/v1.0...v1.2)

---
updated-dependencies:
- dependency-name: NcStudios/VulkanCI
  dependency-version: '1.2'
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-10-22 16:33:46 +02:00
kbz_8 15f2649562 fixing deps fetching CI 2025-10-22 16:33:46 +02:00
kbz_8 a28e17aa31 fixing CI not being trigger from automatic pull requests 2025-10-22 16:33:46 +02:00
kbz_8 c0095314fd fixing deps fetching CI 2025-10-22 15:20:59 +02:00
kbz_8 4529ba5752 fixing CI not being trigger from automatic pull requests 2025-10-22 15:20:59 +02:00
kbz_8 d127e6c3f9 bumping mlx version 2025-10-22 13:38:53 +02:00
kbz_8 a9f5be910f fixing render finished semaphore based on max frame in flight issue (#155) 2025-10-22 13:37:25 +02:00
kbz_8 4f1cad4e72 fixing render finished semaphore based on max frame in flight issue 2025-10-22 13:30:55 +02:00
kbz_8 9573199ad9 Indev (#154)
adding unit test CI
fixing windows build
fixing issue with descriptor pools when over 1024 images rendered
2025-10-22 12:25:32 +02:00
kbz_8 72e158a0a7 Merge branch 'master' into indev 2025-10-22 12:19:25 +02:00
kbz_8 72d8ddae64 fixing descriptor pools issue, adding unit tests shortcut to makefile 2025-10-22 12:09:28 +02:00
kbz_8 93014c1668 143 headless mode (#150) 2025-09-24 19:49:32 +02:00
kbz_8 19758b6d40 updating kvf 2025-09-24 19:39:22 +02:00
kbz_8 5c385675c7 updating readme 2025-09-24 19:22:45 +02:00
kbz_8 ab9d12ae17 fixing physical device selection under swiftshaders 2025-09-24 19:11:53 +02:00
kbz_8 18b57e3761 fixing unit tests CI 2025-09-24 16:32:55 +02:00
kbz_8 bb67bd42e1 fixing unit tests CI 2025-09-24 16:27:59 +02:00
kbz_8 0894cb5d4f fixing unit tests CI 2025-09-24 16:24:06 +02:00
kbz_8 e45ded6ea9 fixing unit tests CI 2025-09-24 15:48:08 +02:00
kbz_8 93d0b1828b fixing unit tests CI 2025-09-24 11:06:05 +02:00
kbz_8 d2057e3108 fixing unit tests CI 2025-09-24 10:57:29 +02:00
kbz_8 e7baccb6cc fixing unit tests CI 2025-09-24 10:56:22 +02:00
kbz_8 41cae01a9b fixing unit tests CI 2025-09-24 10:55:06 +02:00
kbz_8 008dc4132c fixing unit tests CI 2025-09-24 10:48:08 +02:00
kbz_8 3e29dd1bbe fixing unit tests CI 2025-09-24 10:37:03 +02:00
kbz_8 9f795fa67e fixing unit tests CI 2025-09-24 10:26:28 +02:00
kbz_8 4e88505aa6 adding unit test CI 2025-09-24 10:15:54 +02:00
kbz_8 324ef540fd adding headless mode 2025-09-24 09:54:44 +02:00
kbz_8 741fa6cf89 Bump actions/first-interaction from 1 to 2 (#146)
Bumps
[actions/first-interaction](https://github.com/actions/first-interaction)
from 1 to 2.
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a
href="https://github.com/actions/first-interaction/releases">actions/first-interaction's
releases</a>.</em></p>
<blockquote>
<h2>v2.0.0</h2>
<h2>What's Changed</h2>
<ul>
<li>Installed <code>@​actions/core</code> by <a
href="https://github.com/TheGuptaEmpire"><code>@​TheGuptaEmpire</code></a>
in <a
href="https://redirect.github.com/actions/first-interaction/pull/274">actions/first-interaction#274</a></li>
<li>Update README.md by <a
href="https://github.com/Alirezaaraby"><code>@​Alirezaaraby</code></a>
in <a
href="https://redirect.github.com/actions/first-interaction/pull/75">actions/first-interaction#75</a></li>
<li>DOC: adjust the example to show a full yaml file by <a
href="https://github.com/tacaswell"><code>@​tacaswell</code></a> in <a
href="https://redirect.github.com/actions/first-interaction/pull/36">actions/first-interaction#36</a></li>
<li>Demonstrate |- multiline YAML string in README by <a
href="https://github.com/simonw"><code>@​simonw</code></a> in <a
href="https://redirect.github.com/actions/first-interaction/pull/16">actions/first-interaction#16</a></li>
<li>Update README.md by <a
href="https://github.com/nebuk89"><code>@​nebuk89</code></a> in <a
href="https://redirect.github.com/actions/first-interaction/pull/317">actions/first-interaction#317</a></li>
<li>Convert from Container to TypeScript Action by <a
href="https://github.com/ncalteen"><code>@​ncalteen</code></a> in <a
href="https://redirect.github.com/actions/first-interaction/pull/311">actions/first-interaction#311</a></li>
<li>Bump <code>@​octokit/types</code> from 13.8.0 to 14.1.0 by <a
href="https://github.com/dependabot"><code>@​dependabot</code></a>[bot]
in <a
href="https://redirect.github.com/actions/first-interaction/pull/323">actions/first-interaction#323</a></li>
<li>Bump undici from 5.28.5 to 5.29.0 by <a
href="https://github.com/dependabot"><code>@​dependabot</code></a>[bot]
in <a
href="https://redirect.github.com/actions/first-interaction/pull/319">actions/first-interaction#319</a></li>
<li>Bump the npm-development group with 16 updates by <a
href="https://github.com/dependabot"><code>@​dependabot</code></a>[bot]
in <a
href="https://redirect.github.com/actions/first-interaction/pull/320">actions/first-interaction#320</a></li>
<li>Bump <code>@​actions/github</code> from 6.0.0 to 6.0.1 in the
npm-production group by <a
href="https://github.com/dependabot"><code>@​dependabot</code></a>[bot]
in <a
href="https://redirect.github.com/actions/first-interaction/pull/321">actions/first-interaction#321</a></li>
</ul>
<h2>New Contributors</h2>
<ul>
<li><a
href="https://github.com/TheGuptaEmpire"><code>@​TheGuptaEmpire</code></a>
made their first contribution in <a
href="https://redirect.github.com/actions/first-interaction/pull/274">actions/first-interaction#274</a></li>
<li><a
href="https://github.com/Alirezaaraby"><code>@​Alirezaaraby</code></a>
made their first contribution in <a
href="https://redirect.github.com/actions/first-interaction/pull/75">actions/first-interaction#75</a></li>
<li><a href="https://github.com/tacaswell"><code>@​tacaswell</code></a>
made their first contribution in <a
href="https://redirect.github.com/actions/first-interaction/pull/36">actions/first-interaction#36</a></li>
<li><a href="https://github.com/simonw"><code>@​simonw</code></a> made
their first contribution in <a
href="https://redirect.github.com/actions/first-interaction/pull/16">actions/first-interaction#16</a></li>
<li><a href="https://github.com/nebuk89"><code>@​nebuk89</code></a> made
their first contribution in <a
href="https://redirect.github.com/actions/first-interaction/pull/317">actions/first-interaction#317</a></li>
<li><a href="https://github.com/ncalteen"><code>@​ncalteen</code></a>
made their first contribution in <a
href="https://redirect.github.com/actions/first-interaction/pull/311">actions/first-interaction#311</a></li>
<li><a
href="https://github.com/dependabot"><code>@​dependabot</code></a>[bot]
made their first contribution in <a
href="https://redirect.github.com/actions/first-interaction/pull/323">actions/first-interaction#323</a></li>
</ul>
<p><strong>Full Changelog</strong>: <a
href="https://github.com/actions/first-interaction/compare/v1.3.0...v2.0.0">https://github.com/actions/first-interaction/compare/v1.3.0...v2.0.0</a></p>
<h2>v1.3.0</h2>
<h1>Upgrade our base image from node v14 -&gt; v20</h1>
<p>Add dependency on <code>@octokit/rest</code> and
<code>@actions/http-client</code>.</p>
<p>👉 See the PR for details: <a
href="https://redirect.github.com/actions/first-interaction/pull/287">actions/first-interaction#287</a></p>
<h2>v1.2.0</h2>
<h1>Upgrade our codeql actions from v1 -&gt; v2</h1>
<p>Updates <code>github/codeql-action/init</code>,
<code>github/codeql-action/autobuild</code>, and
<code>github/codeql-action/analyze</code> to <code>v2</code>.</p>
<p>👉 See the PR for details: <a
href="https://redirect.github.com/actions/first-interaction/pull/275">actions/first-interaction#275</a></p>
<h2>v1.1.1</h2>
<p>Update bundled <code>@actions/toolkit</code> packages to fix <a
href="https://redirect.github.com/actions/first-interaction/issues/101">actions/first-interaction#101</a></p>
<h2>v1.1.0</h2>
<p>No release notes provided.</p>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="https://github.com/actions/first-interaction/commit/2d4393e6bc0e2efb2e48fba7e06819c3bf61ffc9"><code>2d4393e</code></a>
Merge pull request <a
href="https://redirect.github.com/actions/first-interaction/issues/321">#321</a>
from actions/dependabot/npm_and_yarn/npm-production-b...</li>
<li><a
href="https://github.com/actions/first-interaction/commit/4dbde70384151bfd744db7357b0b084af0f8aa60"><code>4dbde70</code></a>
Rebuild dist</li>
<li><a
href="https://github.com/actions/first-interaction/commit/329f5ebce93dfc6ceecf574968a27bfc964e30a1"><code>329f5eb</code></a>
Bump <code>@​actions/github</code> from 6.0.0 to 6.0.1 in the
npm-production group</li>
<li><a
href="https://github.com/actions/first-interaction/commit/a7b6951cb1a192cdd1836a5cfc74ddebc8e6d6d3"><code>a7b6951</code></a>
Merge pull request <a
href="https://redirect.github.com/actions/first-interaction/issues/320">#320</a>
from actions/dependabot/npm_and_yarn/npm-development-...</li>
<li><a
href="https://github.com/actions/first-interaction/commit/15ecaf52fe1b053d85565554ca5353c00f85cba4"><code>15ecaf5</code></a>
Rebuild dist</li>
<li><a
href="https://github.com/actions/first-interaction/commit/12e4e8b26d063bf642efedd6e139e561d48e8287"><code>12e4e8b</code></a>
Bump the npm-development group with 16 updates</li>
<li><a
href="https://github.com/actions/first-interaction/commit/cf67d10ea145b6732ab396c3b28fa9b7b8e74e9d"><code>cf67d10</code></a>
Merge pull request <a
href="https://redirect.github.com/actions/first-interaction/issues/319">#319</a>
from actions/dependabot/npm_and_yarn/undici-5.29.0</li>
<li><a
href="https://github.com/actions/first-interaction/commit/b2d4b15c5a811ea1f4bbad268da2bca2109189d7"><code>b2d4b15</code></a>
Licensed cache</li>
<li><a
href="https://github.com/actions/first-interaction/commit/27d1ab573741ae4c5f6754c10101173d25b5f53c"><code>27d1ab5</code></a>
Rebuild</li>
<li><a
href="https://github.com/actions/first-interaction/commit/6418932147dea53065542ff1a93c651148dc8124"><code>6418932</code></a>
Bump undici from 5.28.5 to 5.29.0</li>
<li>Additional commits viewable in <a
href="https://github.com/actions/first-interaction/compare/v1...v2">compare
view</a></li>
</ul>
</details>
<br />


[![Dependabot compatibility
score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=actions/first-interaction&package-manager=github_actions&previous-version=1&new-version=2)](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores)

Dependabot will resolve any conflicts with this PR as long as you don't
alter it yourself. You can also trigger a rebase manually by commenting
`@dependabot rebase`.

[//]: # (dependabot-automerge-start)
[//]: # (dependabot-automerge-end)

---

<details>
<summary>Dependabot commands and options</summary>
<br />

You can trigger Dependabot actions by commenting on this PR:
- `@dependabot rebase` will rebase this PR
- `@dependabot recreate` will recreate this PR, overwriting any edits
that have been made to it
- `@dependabot merge` will merge this PR after your CI passes on it
- `@dependabot squash and merge` will squash and merge this PR after
your CI passes on it
- `@dependabot cancel merge` will cancel a previously requested merge
and block automerging
- `@dependabot reopen` will reopen this PR if it is closed
- `@dependabot close` will close this PR and stop Dependabot recreating
it. You can achieve the same result by closing it manually
- `@dependabot show <dependency name> ignore conditions` will show all
of the ignore conditions of the specified dependency
- `@dependabot ignore this major version` will close this PR and stop
Dependabot creating any more for this major version (unless you reopen
the PR or upgrade to it yourself)
- `@dependabot ignore this minor version` will close this PR and stop
Dependabot creating any more for this minor version (unless you reopen
the PR or upgrade to it yourself)
- `@dependabot ignore this dependency` will close this PR and stop
Dependabot creating any more for this dependency (unless you reopen the
PR or upgrade to it yourself)


</details>
2025-07-28 13:01:36 +02:00
dependabot[bot] 22e7d90285 Bump actions/first-interaction from 1 to 2
Bumps [actions/first-interaction](https://github.com/actions/first-interaction) from 1 to 2.
- [Release notes](https://github.com/actions/first-interaction/releases)
- [Commits](https://github.com/actions/first-interaction/compare/v1...v2)

---
updated-dependencies:
- dependency-name: actions/first-interaction
  dependency-version: '2'
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-07-22 00:41:08 +00:00
kbz_8 f17a1b24e3 update dependencies (#144)
Automated changes by
[create-pull-request](https://github.com/peter-evans/create-pull-request)
GitHub action
2025-07-03 10:58:06 +02:00
Kbz-8 85c3c844ea [BOT] update dependencies 2025-06-29 00:51:34 +00:00
kbz_8 14dee628c4 starting to work on headless support 2025-06-24 07:10:02 +02:00
kbz_8 e66c5482ea Indev (#142) 2025-06-23 20:46:06 +02:00
kbz_8 c474648da0 Merge branch 'master' into indev 2025-06-23 20:41:57 +02:00
kbz_8 c94513107b fixing image set pixel 2025-06-23 20:40:42 +02:00
kbz_8 ed794863d9 Merge branch 'master' of github.com:seekrs/MacroLibX 2025-06-23 20:35:45 +02:00
kbz_8 c7fba85393 fixing image set pixel 2025-06-23 20:35:36 +02:00
kbz_8 5650662d07 update dependencies (#140)
Automated changes by
[create-pull-request](https://github.com/peter-evans/create-pull-request)
GitHub action
2025-06-01 11:16:11 +02:00
Kbz-8 640554981c [BOT] update dependencies 2025-06-01 00:54:50 +00:00
kbz_8 a9274fcb3e update dependencies (#139)
Automated changes by
[create-pull-request](https://github.com/peter-evans/create-pull-request)
GitHub action
2025-05-18 12:54:08 +02:00
Kbz-8 3d6314253a [BOT] update dependencies 2025-05-18 00:46:40 +00:00
kbz_8 1a77df23ee update dependencies (#138)
Automated changes by
[create-pull-request](https://github.com/peter-evans/create-pull-request)
GitHub action
2025-05-11 13:35:22 +02:00
Kbz-8 c16c4dc301 [BOT] update dependencies 2025-05-11 00:45:50 +00:00
kbz_8 7354a5ade4 update dependencies (#137)
Automated changes by
[create-pull-request](https://github.com/peter-evans/create-pull-request)
GitHub action
2025-05-05 15:47:10 +02:00
Kbz-8 6c22b3e830 [BOT] update dependencies 2025-04-20 00:44:40 +00:00
kbz_8 0fdc36a6b7 update dependencies (#136)
Automated changes by
[create-pull-request](https://github.com/peter-evans/create-pull-request)
GitHub action
2025-04-17 16:49:02 +02:00
Kbz-8 d2513834a2 [BOT] update dependencies 2025-04-06 00:43:23 +00:00
kbz_8 ba5ef31796 update dependencies (#135)
Automated changes by
[create-pull-request](https://github.com/peter-evans/create-pull-request)
GitHub action
2025-03-23 15:00:05 +01:00
Kbz-8 29826e70ab [BOT] update dependencies 2025-03-23 00:42:57 +00:00
kbz_8 31d2054389 add rules in valgrind.supp (#134)
Hello,

Following my use of this library for my cub3D project, I noticed some
Valgrind issues that are not handled by the valgrind.supp file.
2025-03-19 11:31:27 +01:00
Jérémy Lorette 24c3faa88f add rules in valgrind.supp 2025-03-19 08:33:20 +01:00
kbz_8 44f2bbf6cd Indev (#133) 2025-03-17 11:34:58 +01:00
kbz_8 3e079cc0e9 fixing bug 2025-03-17 11:24:43 +01:00
kbz_8 025db7c2c8 yes 2025-03-14 12:41:51 +01:00
kbz_8 0628afa905 adding bindings (#132) 2025-03-13 17:11:33 +01:00
kbz_8 b05fb59e37 Merge branch 'master' into indev 2025-03-13 17:06:23 +01:00
kbz_8 2c73362fce adding bindings 2025-03-13 16:58:10 +01:00
kbz_8 f47db635e2 Indev (#131) 2025-03-13 00:47:48 +01:00
kbz_8 c72d44a8ea Merge branch 'indev' of github.com:seekrs/MacroLibX into indev 2025-03-13 00:43:47 +01:00
kbz_8 70d2426ed4 removing unnecessary mode in CIs 2025-03-13 00:43:34 +01:00
kbz_8 e89fe88d83 adding hidden bindings 2025-03-13 00:40:16 +01:00
kbz_8 19dbd4e203 Merge branch 'indev' of github.com:seekrs/MacroLibX into indev 2025-03-13 00:39:22 +01:00
kbz_8 093dabcbbb adding hidden bindings 2025-03-13 00:39:01 +01:00
kbz_8 096c0ae8cb Indev (#130) 2025-03-12 23:09:01 +01:00
kbz_8 ff76134422 Merge branch 'master' into indev 2025-03-12 23:03:14 +01:00
kbz_8 2345cf4417 adding secret bindings 2025-03-12 22:57:29 +01:00
kbz_8 4bd35e72fd Merge branch 'indev' of github.com:seekrs/MacroLibX into indev 2025-03-12 21:38:20 +01:00
kbz_8 2798a43674 yes 2025-03-12 21:37:59 +01:00
kbz_8 0c11d7a815 update dependencies (#129)
Automated changes by
[create-pull-request](https://github.com/peter-evans/create-pull-request)
GitHub action
2025-03-10 08:49:06 +01:00
Kbz-8 ad4891f1f5 [BOT] update dependencies 2025-03-09 00:34:15 +00:00
kbz_8 e7d575046a Indev (#128) 2025-03-08 19:01:54 +01:00
kbz_8 f478bb4a9e Merge branch 'master' into indev 2025-03-08 18:53:58 +01:00
kbz_8 42e7e409db update dependencies (#124)
Automated changes by
[create-pull-request](https://github.com/peter-evans/create-pull-request)
GitHub action
2025-02-24 08:13:09 +01:00
kbz_8 357c813b85 fix(Renderer/Image.cpp): bad moving_y bounds checking (#126) 2025-02-24 08:12:50 +01:00
kbz_8 daade1efc0 Revert "🐛 fix(Renderer/Image.cpp): bad moving_y bounds checking" (#125)
Reverts seekrs/MacroLibX#123
2025-02-24 08:12:05 +01:00
kbz_8 90a8dad18c Revert "🐛 fix(Renderer/Image.cpp): bad moving_y bounds checking" 2025-02-24 08:11:18 +01:00
kbz_8 fbc5bf0e45 🐛 fix(Renderer/Image.cpp): bad moving_y bounds checking (#123)
moved moving_y++ line
2025-02-24 08:11:10 +01:00
Kbz-8 43a727edf4 [BOT] update dependencies 2025-02-23 00:40:25 +00:00
Arkturius 6a959d8469 🐛 fix(Renderer/Image.cpp): bad moving_y bounds checking 2025-02-22 16:39:09 +01:00
kbz_8 cadf1669c8 update dependencies (#122)
Automated changes by
[create-pull-request](https://github.com/peter-evans/create-pull-request)
GitHub action
2025-02-10 08:05:01 +01:00
Kbz-8 0b99c62bbf [BOT] update dependencies 2025-02-09 00:39:34 +00:00
kbz_8 0201d933fd update dependencies (#121)
Automated changes by
[create-pull-request](https://github.com/peter-evans/create-pull-request)
GitHub action
2025-02-02 17:19:08 +01:00
Kbz-8 8a91d90b0d [BOT] update dependencies 2025-02-02 00:38:46 +00:00
kbz_8 0982ed814d update dependencies (#120)
Automated changes by
[create-pull-request](https://github.com/peter-evans/create-pull-request)
GitHub action
2025-01-26 10:18:23 +01:00
Kbz-8 c5b1a80bd9 [BOT] update dependencies 2025-01-26 00:37:34 +00:00
kbz_8 3f5b42d301 fixing error message (#119) 2025-01-24 20:30:54 +01:00
kbz_8 69502db0ee fixing error message 2025-01-24 20:23:28 +01:00
kbz_8 c50925c64d Fix swapchain surface format selection (#118) 2025-01-22 10:11:02 +01:00
kbz_8 7e0664a28f yes 2025-01-21 21:27:13 +01:00
kbz_8 fdaaa86b7f fixing msvc compilation issue 2025-01-21 21:24:58 +01:00
kbz_8 3f8955f4b1 fixing swapchain surface format selection 2025-01-21 20:59:57 +01:00
kbz_8 baec65134c Merge branch 'indev' of github.com:seekrs/MacroLibX into indev 2025-01-21 15:12:30 +01:00
kbz_8 4462400b73 adding swapchain format to debug logs 2025-01-21 15:12:09 +01:00
kbz_8 9b0c3500c7 update dependencies (#117)
Automated changes by
[create-pull-request](https://github.com/peter-evans/create-pull-request)
GitHub action
2025-01-19 20:48:42 +01:00
Kbz-8 157e555fb6 [BOT] update dependencies 2025-01-19 00:39:17 +00:00
kbz_8 2ae59b1b39 fixing too recent header (#116) 2025-01-12 21:17:31 +01:00
kbz_8 2c710058f3 fixing too recent header 2025-01-12 21:13:30 +01:00
kbz_8 d64be4a1f5 Indev (#115) 2025-01-12 18:39:09 +01:00
kbz_8 8c2e0cc69e fixing deps update 2025-01-12 12:30:43 +01:00
kbz_8 82dc92047f yes (#114) 2025-01-12 12:28:03 +01:00
kbz_8 3654cc67b1 update dependencies (#113)
Automated changes by
[create-pull-request](https://github.com/peter-evans/create-pull-request)
GitHub action
2025-01-12 12:27:14 +01:00
Kbz-8 e46c2b99ec [BOT] update dependencies 2025-01-12 00:41:23 +00:00
kbz_8 2fdd9246db update README.md (#112) 2025-01-11 23:44:59 +01:00
kbz_8 e6fb5a72d2 update README.md 2025-01-11 23:44:37 +01:00
kbz_8 bc3d732208 Update README.md (#111) 2025-01-11 23:26:30 +01:00
kbz_8 23fc64a679 Update README.md 2025-01-11 23:26:20 +01:00
kbz_8 8bbe66528e release 2.0 (#110) 2025-01-11 23:15:04 +01:00
kbz_8 f4422c3174 fixing macOS issue 2025-01-11 23:04:58 +01:00
kbz_8 86709573fe fixing macOS issue 2025-01-11 22:47:26 +01:00
kbz_8 c8250629f3 fixing macOS issue 2025-01-11 22:42:40 +01:00
kbz_8 ef16cd3fdb fixing macOS issue 2025-01-11 22:28:39 +01:00
kbz_8 12c7469f52 fixing macOS issue 2025-01-11 22:23:20 +01:00
kbz_8 9443555cbb fixing macOS issue 2025-01-11 22:21:32 +01:00
kbz_8 023215aeed fixing macOS issue 2025-01-11 22:00:42 +01:00
kbz_8 bb523e8f66 fixing macOS issue 2025-01-11 21:49:30 +01:00
kbz_8 48da7003c9 fixing macOS issue 2025-01-11 21:44:17 +01:00
kbz_8 2137fc4ee7 fixing macOS issue 2025-01-11 21:42:50 +01:00
kbz_8 0f0ca48339 fixing haeder 2025-01-08 12:37:34 +01:00
kbz_8 deb6c20361 fixing transformations 2025-01-07 19:57:03 +01:00
kbz_8 b432e3e2e1 fixing possible segmentation fault in Texture::SetLinearRegion 2025-01-07 15:59:26 +01:00
kbz_8 1f482719e6 fixing things 2025-01-07 01:20:26 +01:00
kbz_8 3683a48e17 update dependencies (#109)
Automated changes by
[create-pull-request](https://github.com/peter-evans/create-pull-request)
GitHub action
2025-01-05 12:05:19 +01:00
Kbz-8 94b46ac18c [BOT] update dependencies 2025-01-05 00:40:54 +00:00
kbz_8 6d34a7ffa6 update dependencies (#107)
Automated changes by
[create-pull-request](https://github.com/peter-evans/create-pull-request)
GitHub action
2024-12-29 17:27:48 +01:00
Kbz-8 f4c186e724 [BOT] update dependencies 2024-12-29 00:41:02 +00:00
kbz_8 ce530c765e wtf is hapenning 2024-12-28 15:42:38 +01:00
kbz_8 d1d7f7ed98 Merge branch 'indev' of github.com:seekrs/MacroLibX into indev 2024-12-27 23:29:27 +01:00
kbz_8 49002fdd98 fixing vicious bug in scene code 2024-12-27 23:28:51 +01:00
kbz_8 45220a35fb update dependencies (#106)
Automated changes by
[create-pull-request](https://github.com/peter-evans/create-pull-request)
GitHub action
2024-12-22 15:42:50 +01:00
Kbz-8 5244cde0ae [BOT] update dependencies 2024-12-22 00:40:37 +00:00
kbz_8 4e326db10d re-adding render to texture 2024-12-20 01:19:15 +01:00
kbz_8 952e48a05c fixing documentation in headers 2024-12-17 03:00:12 +01:00
kbz_8 62bd63c364 adding multiple hooks supports for events and loop 2024-12-17 02:33:04 +01:00
kbz_8 30f4602b1c fixing gcc/msvc error 2024-12-17 01:40:58 +01:00
kbz_8 393735b1d6 fixing gcc/msvc error 2024-12-17 01:03:00 +01:00
kbz_8 d40264891c fixing gcc/msvc error 2024-12-17 00:59:54 +01:00
kbz_8 6604cd647d changing endianness getter 2024-12-17 00:42:21 +01:00
kbz_8 f64ce376d6 implementing endianness check on mlx_color struct 2024-12-17 00:19:13 +01:00
kbz_8 c636229875 working on endianness with vulkan images 2024-12-17 00:11:21 +01:00
kbz_8 a85ad6378e fixing bug in texture clear 2024-12-16 19:07:16 +01:00
kbz_8 5a93cd4ae5 fixing homebrew path 2024-12-16 17:26:12 +01:00
kbz_8 4efe213fc6 revert 2024-12-16 17:22:34 +01:00
kbz_8 8721fe5000 installing SDL2 framework in macos action 2024-12-16 17:03:53 +01:00
kbz_8 a90bb88169 update action images 2024-12-16 16:57:23 +01:00
kbz_8 35b47936b4 fixing windows compilation issue 2024-12-16 16:39:50 +01:00
kbz_8 69bbed5b54 adding gcc13 to CI 2024-12-16 16:39:04 +01:00
kbz_8 024a9af55a fixing macos compilation issue 2024-12-16 16:17:17 +01:00
kbz_8 623021a669 implementing last functions, adding put pixel region 2024-12-16 16:13:44 +01:00
kbz_8 feb3fcbd1f finxing memory usages 2024-12-16 01:24:25 +01:00
kbz_8 5b726fe74a adding missing function implementation 2024-12-15 03:53:56 +01:00
kbz_8 5a36b90a72 reworking application and bridge 2024-12-15 03:35:17 +01:00
kbz_8 e365c8a48c rewritting parts of the API; ci skip 2024-12-14 16:38:44 +01:00
kbz_8 7bd2b9c4c7 working on garbage collection, fixing small issues with font destroy 2024-12-14 01:39:50 +01:00
kbz_8 f78c3e9f0f fixing valgrind issues, injecting garbage collector inside vulkan's funtions 2024-12-13 02:51:52 +01:00
kbz_8 34ea0822a7 moving experimental features to a new folder 2024-12-04 18:34:53 +01:00
kbz_8 f5ffd97e48 officially push 2.0 to test (#105) 2024-12-04 15:56:59 +01:00
kbz_8 6f57d9dab7 fetching deps 2024-12-04 15:56:38 +01:00
kbz_8 65fd92dca9 trying to fix merge conflicts 2024-12-04 15:55:11 +01:00
kbz_8 999ef64d0a working on subpass dependencies 2024-12-04 15:38:47 +01:00
kbz_8 33260f316f yes 2024-12-04 15:14:56 +01:00
kbz_8 3122576f04 enabling pre compiled header 2024-12-04 15:04:51 +01:00
kbz_8 92d060fc70 adding include check 2024-12-04 14:35:54 +01:00
kbz_8 57a7b10850 adding compiler version info to makefile header 2024-12-04 14:30:09 +01:00
kbz_8 777b92af8c adding missing include 2024-12-04 14:19:36 +01:00
kbz_8 b7183a1058 fixing window resizing 2024-12-04 14:04:44 +01:00
kbz_8 e425b66591 update dependencies (#104)
Automated changes by
[create-pull-request](https://github.com/peter-evans/create-pull-request)
GitHub action
2024-12-03 14:35:12 +01:00
Kbz-8 8db78fc86b [BOT] update dependencies 2024-12-01 00:48:21 +00:00
kbz_8 122f4e8403 working on swapchains 2024-11-26 23:11:03 +01:00
kbz_8 843856d004 update dependencies (#103)
Automated changes by
[create-pull-request](https://github.com/peter-evans/create-pull-request)
GitHub action
2024-11-24 18:11:21 +01:00
Kbz-8 afc17be8e4 [BOT] update dependencies 2024-11-24 00:41:50 +00:00
kbz_8 0b492d5d47 yes (#102) 2024-11-22 15:37:01 +01:00
kbz_8 8c63e316ef Edit valgrind.supp for libdbus & libnvidia leak (#101)
Added rules in valgrind.supp for libdbus.so & libnvidia leaks
2024-11-22 15:35:43 +01:00
Thomas Arnaud 375fa0f49e Edit valgrind.supp for libdbus & libnvidia lib 2024-11-22 13:59:35 +01:00
kbz_8 32b6053cfb working on rtt 2024-11-14 17:38:44 +01:00
kbz_8 ef50272a0c fixing rotation 2024-11-14 11:44:52 +01:00
kbz_8 c6aaa4e2fa fixing linux build failure 2024-11-13 12:23:16 +01:00
kbz_8 e29ea92202 adding transformations 2024-11-13 12:17:59 +01:00
kbz_8 eaf5be3061 adding nesting to debug logs 2024-11-05 12:49:21 +01:00
kbz_8 4ae7bd0420 improving BringToLayer 2024-11-05 11:59:31 +01:00
kbz_8 5f46c8cb55 fixing bug with image recreation 2024-11-05 11:50:40 +01:00
kbz_8 e8de2c169d adding clear color in mlx_clear_window 2024-11-04 21:21:46 +01:00
kbz_8 bccfb8cd90 update dependencies (#100)
Automated changes by
[create-pull-request](https://github.com/peter-evans/create-pull-request)
GitHub action
2024-11-04 17:50:11 +01:00
Kbz-8 f3efdd8d72 [BOT] update dependencies 2024-11-03 00:40:16 +00:00
kbz_8 b59888efb3 yes 2024-11-03 01:23:52 +01:00
kbz_8 a662427097 added show and hide cursor support, fixing technological debt from original mlx, fixed missaligned comments in mlx.h 2024-10-31 15:16:01 +01:00
kbz_8 6669d78323 updating example 2024-10-31 13:07:07 +01:00
kbz_8 de30c11157 fixing texts 2024-10-31 12:54:05 +01:00
kbz_8 5cf965b9a1 yes 2024-10-31 12:36:44 +01:00
kbz_8 2854b19296 yes 2024-10-28 20:19:39 +01:00
kbz_8 d167538b3f yes 2024-10-28 20:17:39 +01:00
kbz_8 9dfe72f27c Fixing layering issues with text and textures (#99)
![image](https://github.com/user-attachments/assets/804d7dfa-90fd-4d61-b448-61ffa30ed00f)
2024-10-28 20:16:49 +01:00
Namonay 00fccf011e Formatting 2024-10-28 20:02:42 +01:00
Namonay a1bc4a801d Cleaned code 2024-10-28 00:29:11 +01:00
Namonay 8c287e4cbc add: bring textures to draw layer
Adding the Scene::BringToDrawLayer() to fix layering issues after a Scene::ResetScene() call
2024-10-27 23:12:07 +01:00
kbz_8 fed7111362 fixing segfault at exit 2024-10-27 21:18:22 +01:00
kbz_8 dbf4d3cc5b pushing for vavaas to debug 2024-10-27 20:55:21 +01:00
kbz_8 9499ade4c0 update dependencies (#98)
Automated changes by
[create-pull-request](https://github.com/peter-evans/create-pull-request)
GitHub action
2024-10-27 11:42:45 +01:00
Kbz-8 e470e4c43c [BOT] update dependencies 2024-10-27 00:40:14 +00:00
kbz_8 028cb57ff4 working on texts and fonts 2024-10-27 01:14:07 +02:00
kbz_8 625e23e624 feature(platform/window.cpp): put SDL_CreateWindow flags in a define (#97) 2024-10-27 00:42:33 +02:00
kbz_8 7114522d80 fixed code style 2024-10-27 00:34:41 +02:00
killian 1c073eb8eb feature(platform/window.cpp): put SDL_CreateWindow flags in a define
Signed-off-by: killian <oss@xtrm.me>
2024-10-27 00:32:22 +02:00
kbz_8 3aaa5df929 2.0 devFixing putpixel and put image overlapping incorrectly after a mlx_clear_window() call (#96)
Fixed m_draw_layer incrementation when TexturePut is called
2024-10-25 23:23:37 +02:00
Namonay 3828b98a60 Merge branch 'seekrs:2.0-dev' into 2.0-dev 2024-10-25 23:08:55 +02:00
kbz_8 da41f2836f yes 2024-10-24 19:13:02 +02:00
Namonay 2dadf5d29a better naming and removed todo🤓 2024-10-24 05:30:37 +02:00
Namonay 1ec2f72d26 this feels wrong 2024-10-24 05:16:37 +02:00
Namonay b0384830a9 Merge branch '2.0-dev' of github.com:Namonay/MacroLibX into 2.0-dev 2024-10-24 05:15:57 +02:00
Namonay e1fefba841 this feel so wrong 2024-10-24 05:13:41 +02:00
kbz_8 58ad52e1cc yes 2024-10-22 16:25:13 +02:00
kbz_8 a86f26f0f3 fixing compilation issues 2024-10-22 12:09:49 +02:00
kbz_8 92743b0b03 working on fonts 2024-10-21 23:21:50 +02:00
kbz_8 3291e0cd2a bozoman solution 2024-10-21 21:58:04 +02:00
kbz_8 7a3e5f37fa yes 2024-10-21 19:45:33 +02:00
kbz_8 0304834008 fixing put pixel, adding scene change checker 2024-10-21 01:48:01 +02:00
kbz_8 049eb3e33c update dependencies (#95)
Automated changes by
[create-pull-request](https://github.com/peter-evans/create-pull-request)
GitHub action
2024-10-20 02:42:25 +02:00
Kbz-8 66024349cb [BOT] update dependencies 2024-10-20 00:40:22 +00:00
kbz_8 e1af24a3ef fixing crash when initializing mlx multiple times (#94) 2024-10-19 10:57:39 +02:00
kbz_8 40b82243ba Merge branch 'master' into indev 2024-10-19 10:52:55 +02:00
kbz_8 ecb0a15e74 fetching deps once a week 2024-10-19 10:51:33 +02:00
kbz_8 12b832ee31 fixing crash when initializing the mlx multiple times 2024-10-19 10:50:50 +02:00
kbz_8 4f755f8a6f yes 2024-10-19 10:46:31 +02:00
kbz_8 a905f571dc update dependencies (#92)
Automated changes by
[create-pull-request](https://github.com/peter-evans/create-pull-request)
GitHub action
2024-10-19 00:44:08 +02:00
kbz_8 386d9abe4b yes 2024-10-19 00:43:39 +02:00
kbz_8 d0a74e79c5 fixing inputs bug, fixing missing depth image destruction in scenes 2024-10-17 18:35:33 +02:00
kbz_8 160364bda2 fixing projection issue 2024-10-17 15:37:39 +02:00
Kbz-8 ec2f1101f0 [BOT] update dependencies 2024-10-12 01:21:00 +00:00
kbz_8 568b5a85ce update dependencies (#91)
Automated changes by
[create-pull-request](https://github.com/peter-evans/create-pull-request)
GitHub action
2024-10-08 05:29:49 +02:00
Kbz-8 f2cbd6679d [BOT] update dependencies 2024-10-08 01:23:20 +00:00
kbz_8 2e93798948 update dependencies (#90)
Automated changes by
[create-pull-request](https://github.com/peter-evans/create-pull-request)
GitHub action
2024-10-07 06:09:15 +02:00
Kbz-8 d4ea03e047 [BOT] update dependencies 2024-10-07 01:25:31 +00:00
kbz_8 5866f5ac25 update dependencies (#89)
Automated changes by
[create-pull-request](https://github.com/peter-evans/create-pull-request)
GitHub action
2024-10-06 07:50:37 +02:00
Kbz-8 53650f3153 [BOT] update dependencies 2024-10-06 01:35:52 +00:00
kbz_8 cc8fb1bbb3 update dependencies (#88)
Automated changes by
[create-pull-request](https://github.com/peter-evans/create-pull-request)
GitHub action
2024-10-06 02:05:35 +02:00
Kbz-8 a3334277c6 [BOT] update dependencies 2024-10-05 01:22:08 +00:00
kbz_8 a593838c4d dumbass (#87) 2024-09-30 03:26:07 +02:00
xtrm b4e61e1875 Update mlx.h 2024-09-30 03:15:44 +02:00
kbz_8 ef72083bd0 update dependencies (#86)
Automated changes by
[create-pull-request](https://github.com/peter-evans/create-pull-request)
GitHub action
2024-09-28 22:03:43 +02:00
Kbz-8 b0924861aa [BOT] update dependencies 2024-09-27 01:23:16 +00:00
kbz_8 99437a6d6a adding shaders compilation in makefile 2024-09-22 21:39:20 +02:00
kbz_8 ad35eee0b6 fixing release compilation issue 2024-09-21 12:56:21 +02:00
kbz_8 904b6d31ac adding debug vulkan resources names 2024-09-21 12:18:42 +02:00
kbz_8 2e08c37624 fixing bugs 2024-09-20 21:43:23 +02:00
kbz_8 f9c05d6d7b fixing kvf issues 2024-09-20 17:41:52 +02:00
kbz_8 1e2705ef06 removing all singletons 2024-09-20 17:29:42 +02:00
kbz_8 8348f9ce7a fixing SDLManager 2024-09-20 17:02:55 +02:00
kbz_8 092e5acd9b fixing vulkan loader, moving vulkan pfns to RenderCore 2024-09-20 16:14:14 +02:00
kbz_8 f4e4672cc6 working on vulkan loader 2024-09-16 05:07:02 +02:00
kbz_8 fcb2d1d9bc fixing warnings in kvf 2024-09-15 10:11:08 +02:00
kbz_8 a4b14baddd fixing compilation issues 2024-09-15 09:03:52 +02:00
kbz_8 596393ed20 implementing mouse move and get screen size, removing warnings 2024-09-15 08:56:22 +02:00
kbz_8 2b9b026d68 AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHHHHHHHHHHHHH 2024-09-15 07:56:28 +02:00
kbz_8 4c17f2e165 fixing windows build x3 | replacing compile commands by compile flags 2024-09-15 07:52:25 +02:00
kbz_8 91b51a5621 fixing windows build x2 2024-09-14 13:20:31 +02:00
kbz_8 976afdac3d fixing windows build 2024-09-14 13:14:36 +02:00
kbz_8 429bd9eabd fixing macos and windows CI ? x3 2024-09-14 13:04:43 +02:00
kbz_8 30e07d1f1a fixing macos and windows CI ? 2024-09-14 12:53:29 +02:00
kbz_8 48d09e40d5 fixing macos and windows CI ? 2024-09-14 12:44:25 +02:00
kbz_8 7f2d60f21d fixing compilation issues 2024-09-14 09:55:19 +02:00
kbz_8 a4801fbce8 merge indev into master (#84) 2024-09-14 00:45:30 +02:00
kbz_8 760317dcc7 fixing compilation issues with GCC 2024-09-14 00:05:50 +02:00
kbz_8 520ce8d61e resolving merge (#83) 2024-09-13 23:54:58 +02:00
kbz_8 cd29248fc6 yes 2024-09-13 23:51:01 +02:00
kbz_8 7db31b13c2 adding support for changing window position (#82)
added window move function
2024-09-12 21:00:40 +02:00
kbz_8 4f6886517e fixing codestyle in application.inl 2024-09-12 03:32:08 +02:00
Tidian Delage d87d4fbd6a adding support for changing window position
mlx_set_window_position(void *mlx, void *win, int x, int y)
2024-09-12 01:32:52 +02:00
kbz_8 aa09d9d83f update dependencies (#80)
Automated changes by
[create-pull-request](https://github.com/peter-evans/create-pull-request)
GitHub action
2024-09-07 05:17:36 +02:00
Kbz-8 34b4d2bda0 [BOT] update dependencies 2024-09-07 01:17:30 +00:00
kbz_8 8888bd03d8 fixing compilation issues 2024-09-05 00:41:52 +02:00
kbz_8 8ad6d84bd2 fixing compilation issues, working on textures 2024-09-04 02:35:01 +02:00
kbz_8 e0da415e86 starting to fix compilation issues 2024-09-02 13:36:02 +02:00
kbz_8 a455d7704d adding depth buffer, ci skip 2024-09-02 13:02:32 +02:00
kbz_8 f65ac577bc big refactoring ! ci skip 2024-09-02 09:44:42 +02:00
kbz_8 06372a84ed update dependencies (#79)
Automated changes by
[create-pull-request](https://github.com/peter-evans/create-pull-request)
GitHub action
2024-09-02 09:42:20 +02:00
Kbz-8 1dae0931f7 [BOT] update dependencies 2024-08-31 01:18:08 +00:00
kbz_8 3d8ab31abb update dependencies (#75)
Automated changes by
[create-pull-request](https://github.com/peter-evans/create-pull-request)
GitHub action
2024-08-22 23:13:32 +02:00
Kbz-8 5dcb7402e1 [BOT] update dependencies 2024-08-17 01:12:49 +00:00
kbz_8 8b9ef40f99 Add <algorithm> header to fix compilation issue on Arch Linux (#76)
The code was failing to compile on Arch Linux due to missing definitions
from the <algorithm> header. Including this header resolves the issue,
ensuring compatibility across different environments.
2024-08-08 18:10:22 +02:00
bonsthie 1fe21e7725 Add <algorithm> header to fix compilation issue on Arch Linux
The code was failing to compile on Arch Linux due to missing definitions from the <algorithm> header. Including this header resolves the issue, ensuring compatibility across different environments.
2024-08-08 17:49:14 +02:00
kbz_8 bea16a2dc1 update dependencies (#74)
Automated changes by
[create-pull-request](https://github.com/peter-evans/create-pull-request)
GitHub action
2024-07-20 09:58:01 +02:00
Kbz-8 1ddad73356 [BOT] update dependencies 2024-07-19 15:46:30 +00:00
kbz_8 538cd96eda update dependencies (#73)
Automated changes by
[create-pull-request](https://github.com/peter-evans/create-pull-request)
GitHub action
2024-07-13 03:50:02 +02:00
Kbz-8 3668515e9b [BOT] update dependencies 2024-07-13 01:13:25 +00:00
kbz_8 d95233e728 fixing compoilation issues 2024-07-05 22:15:36 +02:00
kbz_8 d209747978 update dependencies (#72)
Automated changes by
[create-pull-request](https://github.com/peter-evans/create-pull-request)
GitHub action
2024-07-05 12:59:44 +02:00
Kbz-8 00c87a61a3 [BOT] update dependencies 2024-07-02 01:12:05 +00:00
kbz_8 e930b3b0be update dependencies (#71)
Automated changes by
[create-pull-request](https://github.com/peter-evans/create-pull-request)
GitHub action
2024-07-01 22:07:45 +02:00
Kbz-8 0795200910 [BOT] update dependencies 2024-06-29 01:10:23 +00:00
kbz_8 dd36a878cd update dependencies (#70)
Automated changes by
[create-pull-request](https://github.com/peter-evans/create-pull-request)
GitHub action
2024-06-17 19:32:26 +02:00
Kbz-8 470f3a3a3c [BOT] update dependencies 2024-06-15 01:10:51 +00:00
kbz_8 3a3b4e063a update dependencies (#69)
Automated changes by
[create-pull-request](https://github.com/peter-evans/create-pull-request)
GitHub action
2024-06-08 05:01:50 +02:00
Kbz-8 eb158d01c7 [BOT] update dependencies 2024-06-08 01:10:19 +00:00
kbz_8 905ab698cb update dependencies (#68)
Automated changes by
[create-pull-request](https://github.com/peter-evans/create-pull-request)
GitHub action
2024-06-04 14:44:26 +02:00
Kbz-8 d535faaaf7 [BOT] update dependencies 2024-06-01 01:13:48 +00:00
kbz_8 c427c46e24 update dependencies (#67)
Automated changes by
[create-pull-request](https://github.com/peter-evans/create-pull-request)
GitHub action
2024-05-29 18:23:43 +02:00
Kbz-8 e32c65d918 [BOT] update dependencies 2024-05-28 01:08:56 +00:00
kbz_8 81387ec53d removing GLFW support 2024-05-25 16:47:28 +02:00
kbz_8 850b47f6cf update dependencies (#65)
Automated changes by
[create-pull-request](https://github.com/peter-evans/create-pull-request)
GitHub action
2024-05-25 14:58:18 +02:00
Kbz-8 1641a48e4e [BOT] update dependencies 2024-05-23 01:08:01 +00:00
kbz_8 9ef9cd897d 🐛 fix(vsupp): dl and dbus errors suppressed (#66)
ehehheheheh
2024-05-22 18:53:36 +02:00
Arkturius b93d0753c6 🐛 fix(vsupp): dl and dbus errors suppressed 2024-05-22 18:30:59 +02:00
killian 710634ced6 feature(Makefile): change color when compiling in debug 2024-04-24 15:00:22 +02:00
killian d616adb466 feature(Makefile): remove bc dependency, allow usage of -j with make re 2024-04-24 14:57:20 +02:00
kbz_8 e7eb894335 fixing segmentation fault on mlx_destroy_image 2024-04-24 13:52:34 +02:00
kbz_8 afee09d1ea still refactor 2024-04-24 13:47:58 +02:00
kbz_8 1d9a51e4f7 still working on code refactoring 2024-04-23 22:59:33 +02:00
kbz_8 10f1b865bd Cool Makefile I guess (#64)
yada yada yada
2024-04-23 22:52:09 +02:00
xtrm 920e0f5e66 🔨 chore: mauvaisfeedback 2024-04-23 22:46:32 +02:00
kbz_8 ace4c98945 working on code refactor 2024-04-23 20:59:50 +02:00
xtrm a7aa05fcbe 🔨 chore(actions): change usage of DEBUG=true to the debug rule 2024-04-23 20:42:39 +02:00
xtrm 7f7b6704ce 🐛 fix(Makefile): optimize color usage 2024-04-23 20:38:26 +02:00
xtrm 291927a1cc 🐛 fix(actions): try and fix logging in GitHub Actions CI 2024-04-23 20:37:17 +02:00
xtrm 280e3b43d3 🔨 chore(render_core.cpp): revert moving the warning to Makefile 2024-04-23 20:33:11 +02:00
xtrm 969555d572 feature(Makefile): pretty makefile, added -rdynamic LDFLAG, moved debug warning, added debug Makefile rule 2024-04-23 20:21:53 +02:00
kbz_8 a69ea93597 fixing multiple window issue 2024-04-22 17:35:41 +02:00
kbz_8 610603e87c update dependencies (#62)
Automated changes by
[create-pull-request](https://github.com/peter-evans/create-pull-request)
GitHub action
2024-04-22 12:57:49 +02:00
Kbz-8 58c082f033 [BOT] update dependencies 2024-04-22 01:07:14 +00:00
kbz_8 e09797a1a6 merge indev to master (#61) 2024-04-21 18:20:21 +02:00
kbz_8 2c01c67361 Merge branch 'master' into indev 2024-04-21 18:15:25 +02:00
kbz_8 7271b8fc9a update dependencies (#60)
Automated changes by
[create-pull-request](https://github.com/peter-evans/create-pull-request)
GitHub action
2024-04-21 18:14:31 +02:00
kbz_8 67d7635a32 fixing bug with window destruction within mlx_loop 2024-04-21 18:14:14 +02:00
kbz_8 215a0dc2c3 working 2024-04-21 18:10:36 +02:00
Kbz-8 39d38c822b [BOT] update dependencies 2024-04-20 01:04:56 +00:00
kbz_8 6bbf1e196d begenning the refactor 2024-03-27 23:03:54 +01:00
kbz_8 e5ff232065 renaming MLX_Window to Window 2024-03-27 13:19:28 +01:00
kbz_8 4af38a2c7e working glfw support 2024-03-26 00:11:38 +01:00
kbz_8 2200863406 fixing pch compilation error 2024-03-25 19:27:48 +01:00
kbz_8 d9a00dee22 fixing pch compilation error 2024-03-25 19:24:37 +01:00
kbz_8 f7946eea68 fixing pre compiled header usage, improved compilation time 2024-03-25 19:21:14 +01:00
kbz_8 c26c6f952b adding pre compiled header 2024-03-25 18:58:48 +01:00
kbz_8 54435be20d working on fps capper 2024-03-25 17:33:42 +01:00
kbz_8 be2a7d5157 fixing new gcc warning in GPU allocator, fixing #55 2024-03-25 16:18:24 +01:00
kbz_8 7011a6ee6e fixing some bad memory usage 2024-03-25 13:57:20 +01:00
kbz_8 235292b440 update dependencies (#59)
Automated changes by
[create-pull-request](https://github.com/peter-evans/create-pull-request)
GitHub action
2024-03-24 23:04:44 +01:00
Kbz-8 d9e88f70c7 [BOT] update dependencies 2024-03-23 01:01:59 +00:00
kbz_8 e8c80eccab update dependencies (#57)
Automated changes by
[create-pull-request](https://github.com/peter-evans/create-pull-request)
GitHub action
2024-03-15 15:42:44 +01:00
Kbz-8 fa7f16744d [BOT] update dependencies 2024-03-09 01:00:27 +00:00
kbz_8 105b32b710 The bro did it again (#54) 2024-02-25 09:40:47 +01:00
kbz_8 75bca5bf6f Merge branch 'master' into indev 2024-02-25 09:35:31 +01:00
kbz_8 c5a5a029af removing debug print 2024-02-25 09:30:30 +01:00
kbz_8 6000b3e3c1 merge to master (#53) 2024-02-25 09:15:29 +01:00
kbz_8 7b64359f3e fixing issue with text destruction 2024-02-25 09:02:57 +01:00
kbz_8 3624caf519 adding std namespace to all libstd provided primitive types 2024-02-25 08:04:44 +01:00
kbz_8 828024e131 removing unecessary SDL window creation in Vulkan Instance creation 2024-02-24 04:47:05 +01:00
kbz_8 784156c395 fixing weird color bug with mlx_get_image_pixel 2024-02-24 03:58:12 +01:00
kbz_8 b53b36e07a update dependencies (#50)
Automated changes by
[create-pull-request](https://github.com/peter-evans/create-pull-request)
GitHub action
2024-02-18 21:42:23 +01:00
Kbz-8 3bb167e164 [BOT] update dependencies 2024-02-17 01:02:17 +00:00
kbz_8 fe9dd3c9df sync (#49) 2024-02-10 03:12:08 +01:00
kbz_8 132e539d4a Bump peter-evans/create-pull-request from 5 to 6 (#48)
Bumps
[peter-evans/create-pull-request](https://github.com/peter-evans/create-pull-request)
from 5 to 6.
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a
href="https://github.com/peter-evans/create-pull-request/releases">peter-evans/create-pull-request's
releases</a>.</em></p>
<blockquote>
<h2>Create Pull Request v6.0.0</h2>
<h2>Behaviour changes</h2>
<ul>
<li>The default values for <code>author</code> and
<code>committer</code> have changed. See &quot;What's new&quot; below
for details. If you are overriding the default values you will not be
affected by this change.</li>
<li>On completion, the action now removes the temporary git remote
configuration it adds when using <code>push-to-fork</code>. This should
not affect you unless you were using the temporary configuration for
some other purpose after the action completes.</li>
</ul>
<h2>What's new</h2>
<ul>
<li>Updated runtime to Node.js 20
<ul>
<li>The action now requires a minimum version of <a
href="https://github.com/actions/runner/releases/tag/v2.308.0">v2.308.0</a>
for the Actions runner. Update self-hosted runners to v2.308.0 or later
to ensure compatibility.</li>
</ul>
</li>
<li>The default value for <code>author</code> has been changed to
<code>${{ github.actor }} &lt;${{ github.actor_id }}+${{ github.actor
}}@users.noreply.github.com&gt;</code>. The change adds the <code>${{
github.actor_id }}+</code> prefix to the email address to align with
GitHub's standard format for the author email address.</li>
<li>The default value for <code>committer</code> has been changed to
<code>github-actions[bot]
&lt;41898282+github-actions[bot]@users.noreply.github.com&gt;</code>.
This is to align with the default GitHub Actions bot user account.</li>
<li>Adds input <code>git-token</code>, the <a
href="https://docs.github.com/en/github/authenticating-to-github/creating-a-personal-access-token">Personal
Access Token (PAT)</a> that the action will use for git operations. This
input defaults to the value of <code>token</code>. Use this input if you
would like the action to use a different token for git operations than
the one used for the GitHub API.</li>
<li><code>push-to-fork</code> now supports pushing to sibling
repositories in the same network.</li>
<li>Previously, when using <code>push-to-fork</code>, the action did not
remove temporary git remote configuration it adds during execution. This
has been fixed and the configuration is now removed when the action
completes.</li>
<li>If the pull request body is truncated due to exceeding the maximum
length, the action will now suffix the body with the message
&quot;...<em>[Pull request body truncated]</em>&quot; to indicate that
the body has been truncated.</li>
<li>The action now uses <code>--unshallow</code> only when necessary,
rather than as a default argument of <code>git fetch</code>. This should
improve performance, particularly for large git repositories with
extensive commit history.</li>
<li>The action can now be executed on one GitHub server and create pull
requests on a <em>different</em> GitHub server. Server products include
GitHub hosted (github.com), GitHub Enterprise Server (GHES), and GitHub
Enterprise Cloud (GHEC). For example, the action can be executed on
GitHub hosted and create pull requests on a GHES or GHEC instance.</li>
</ul>
<h2>What's Changed</h2>
<ul>
<li>Update distribution by <a
href="https://github.com/actions-bot"><code>@​actions-bot</code></a> in
<a
href="https://redirect.github.com/peter-evans/create-pull-request/pull/2086">peter-evans/create-pull-request#2086</a></li>
<li>fix crazy-max/ghaction-import-gp parameters by <a
href="https://github.com/fharper"><code>@​fharper</code></a> in <a
href="https://redirect.github.com/peter-evans/create-pull-request/pull/2177">peter-evans/create-pull-request#2177</a></li>
<li>Update distribution by <a
href="https://github.com/actions-bot"><code>@​actions-bot</code></a> in
<a
href="https://redirect.github.com/peter-evans/create-pull-request/pull/2364">peter-evans/create-pull-request#2364</a></li>
<li>Use checkout v4 by <a
href="https://github.com/okuramasafumi"><code>@​okuramasafumi</code></a>
in <a
href="https://redirect.github.com/peter-evans/create-pull-request/pull/2521">peter-evans/create-pull-request#2521</a></li>
<li>Note about <code>delete-branch</code> by <a
href="https://github.com/dezren39"><code>@​dezren39</code></a> in <a
href="https://redirect.github.com/peter-evans/create-pull-request/pull/2631">peter-evans/create-pull-request#2631</a></li>
<li>98 dependency updates by <a
href="https://github.com/dependabot"><code>@​dependabot</code></a></li>
</ul>
<h2>New Contributors</h2>
<ul>
<li><a href="https://github.com/fharper"><code>@​fharper</code></a> made
their first contribution in <a
href="https://redirect.github.com/peter-evans/create-pull-request/pull/2177">peter-evans/create-pull-request#2177</a></li>
<li><a
href="https://github.com/okuramasafumi"><code>@​okuramasafumi</code></a>
made their first contribution in <a
href="https://redirect.github.com/peter-evans/create-pull-request/pull/2521">peter-evans/create-pull-request#2521</a></li>
<li><a href="https://github.com/dezren39"><code>@​dezren39</code></a>
made their first contribution in <a
href="https://redirect.github.com/peter-evans/create-pull-request/pull/2631">peter-evans/create-pull-request#2631</a></li>
</ul>
<p><strong>Full Changelog</strong>: <a
href="https://github.com/peter-evans/create-pull-request/compare/v5.0.2...v6.0.0">https://github.com/peter-evans/create-pull-request/compare/v5.0.2...v6.0.0</a></p>
<h2>Create Pull Request v5.0.2</h2>
<p>⚙️ Fixes an issue that occurs when using <code>push-to-fork</code>
and both base and head repositories are in the same org/user
account.</p>
<h2>What's Changed</h2>
<ul>
<li>fix: specify head repo by <a
href="https://github.com/peter-evans"><code>@​peter-evans</code></a> in
<a
href="https://redirect.github.com/peter-evans/create-pull-request/pull/2044">peter-evans/create-pull-request#2044</a></li>
<li>20 dependency updates by <a
href="https://github.com/dependabot"><code>@​dependabot</code></a></li>
</ul>
<p><strong>Full Changelog</strong>: <a
href="https://github.com/peter-evans/create-pull-request/compare/v5.0.1...v5.0.2">https://github.com/peter-evans/create-pull-request/compare/v5.0.1...v5.0.2</a></p>
<h2>Create Pull Request v5.0.1</h2>
<h2>What's Changed</h2>
<ul>
<li>fix: truncate body if exceeds max length by <a
href="https://github.com/peter-evans"><code>@​peter-evans</code></a> in
<a
href="https://redirect.github.com/peter-evans/create-pull-request/pull/1915">peter-evans/create-pull-request#1915</a></li>
<li>12 dependency updates by <a
href="https://github.com/dependabot"><code>@​dependabot</code></a></li>
</ul>
<p><strong>Full Changelog</strong>: <a
href="https://github.com/peter-evans/create-pull-request/compare/v5.0.0...v5.0.1">https://github.com/peter-evans/create-pull-request/compare/v5.0.0...v5.0.1</a></p>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="https://github.com/peter-evans/create-pull-request/commit/b1ddad2c994a25fbc81a28b3ec0e368bb2021c50"><code>b1ddad2</code></a>
feat: v6 (<a
href="https://redirect.github.com/peter-evans/create-pull-request/issues/2717">#2717</a>)</li>
<li><a
href="https://github.com/peter-evans/create-pull-request/commit/bb809027fda03cc267431a7d36a88148eb9f3846"><code>bb80902</code></a>
build(deps-dev): bump <code>@​types/node</code> from 18.19.8 to 18.19.10
(<a
href="https://redirect.github.com/peter-evans/create-pull-request/issues/2712">#2712</a>)</li>
<li><a
href="https://github.com/peter-evans/create-pull-request/commit/e0037d470cdeb1c8133acfba89af08639bb69eb3"><code>e0037d4</code></a>
build(deps): bump peter-evans/create-or-update-comment from 3 to 4 (<a
href="https://redirect.github.com/peter-evans/create-pull-request/issues/2702">#2702</a>)</li>
<li><a
href="https://github.com/peter-evans/create-pull-request/commit/94b1f99e3a73880074d0e669c3b69d376cc8ceae"><code>94b1f99</code></a>
build(deps): bump peter-evans/find-comment from 2 to 3 (<a
href="https://redirect.github.com/peter-evans/create-pull-request/issues/2703">#2703</a>)</li>
<li><a
href="https://github.com/peter-evans/create-pull-request/commit/69c27eaf4a14a67b5362a51e681f83d3d5e0f96b"><code>69c27ea</code></a>
build(deps-dev): bump ts-jest from 29.1.1 to 29.1.2 (<a
href="https://redirect.github.com/peter-evans/create-pull-request/issues/2685">#2685</a>)</li>
<li><a
href="https://github.com/peter-evans/create-pull-request/commit/7ea722a0f6286a45eb3005280d83575a74bc8fef"><code>7ea722a</code></a>
build(deps-dev): bump prettier from 3.2.2 to 3.2.4 (<a
href="https://redirect.github.com/peter-evans/create-pull-request/issues/2684">#2684</a>)</li>
<li><a
href="https://github.com/peter-evans/create-pull-request/commit/5ee839affd4c87811108724370a2819a40e2e5d3"><code>5ee839a</code></a>
build(deps-dev): bump <code>@​types/node</code> from 18.19.7 to 18.19.8
(<a
href="https://redirect.github.com/peter-evans/create-pull-request/issues/2683">#2683</a>)</li>
<li><a
href="https://github.com/peter-evans/create-pull-request/commit/60fc256c678e6ed78d0d42e09675c9beba09cb94"><code>60fc256</code></a>
build(deps-dev): bump eslint-plugin-prettier from 5.1.2 to 5.1.3 (<a
href="https://redirect.github.com/peter-evans/create-pull-request/issues/2660">#2660</a>)</li>
<li><a
href="https://github.com/peter-evans/create-pull-request/commit/0c677233614c017442253060c74fd2cb7ff349fc"><code>0c67723</code></a>
build(deps-dev): bump <code>@​types/node</code> from 18.19.5 to 18.19.7
(<a
href="https://redirect.github.com/peter-evans/create-pull-request/issues/2661">#2661</a>)</li>
<li><a
href="https://github.com/peter-evans/create-pull-request/commit/4e288e851b95bd1362e281a255094fcc47ada675"><code>4e288e8</code></a>
build(deps-dev): bump prettier from 3.1.1 to 3.2.2 (<a
href="https://redirect.github.com/peter-evans/create-pull-request/issues/2659">#2659</a>)</li>
<li>Additional commits viewable in <a
href="https://github.com/peter-evans/create-pull-request/compare/v5...v6">compare
view</a></li>
</ul>
</details>
<br />


[![Dependabot compatibility
score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=peter-evans/create-pull-request&package-manager=github_actions&previous-version=5&new-version=6)](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores)

Dependabot will resolve any conflicts with this PR as long as you don't
alter it yourself. You can also trigger a rebase manually by commenting
`@dependabot rebase`.

[//]: # (dependabot-automerge-start)
[//]: # (dependabot-automerge-end)

---

<details>
<summary>Dependabot commands and options</summary>
<br />

You can trigger Dependabot actions by commenting on this PR:
- `@dependabot rebase` will rebase this PR
- `@dependabot recreate` will recreate this PR, overwriting any edits
that have been made to it
- `@dependabot merge` will merge this PR after your CI passes on it
- `@dependabot squash and merge` will squash and merge this PR after
your CI passes on it
- `@dependabot cancel merge` will cancel a previously requested merge
and block automerging
- `@dependabot reopen` will reopen this PR if it is closed
- `@dependabot close` will close this PR and stop Dependabot recreating
it. You can achieve the same result by closing it manually
- `@dependabot show <dependency name> ignore conditions` will show all
of the ignore conditions of the specified dependency
- `@dependabot ignore this major version` will close this PR and stop
Dependabot creating any more for this major version (unless you reopen
the PR or upgrade to it yourself)
- `@dependabot ignore this minor version` will close this PR and stop
Dependabot creating any more for this minor version (unless you reopen
the PR or upgrade to it yourself)
- `@dependabot ignore this dependency` will close this PR and stop
Dependabot creating any more for this dependency (unless you reopen the
PR or upgrade to it yourself)


</details>
2024-02-05 23:17:30 +01:00
dependabot[bot] 916b0fbcb5 Bump peter-evans/create-pull-request from 5 to 6
Bumps [peter-evans/create-pull-request](https://github.com/peter-evans/create-pull-request) from 5 to 6.
- [Release notes](https://github.com/peter-evans/create-pull-request/releases)
- [Commits](https://github.com/peter-evans/create-pull-request/compare/v5...v6)

---
updated-dependencies:
- dependency-name: peter-evans/create-pull-request
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-02-05 22:10:30 +00:00
kbz_8 ea4793c403 update dependencies (#47)
Automated changes by
[create-pull-request](https://github.com/peter-evans/create-pull-request)
GitHub action
2024-02-02 15:21:14 +01:00
Kbz-8 7b9ee3d49f [BOT] update dependencies 2024-02-02 01:03:23 +00:00
kbz_8 599f9414ae adding check to texture pointers (#46) 2024-01-26 12:11:47 +01:00
kbz_8 d6e4ef1976 Merge branch 'master' into indev 2024-01-26 12:07:15 +01:00
kbz_8 9c0e7dfd21 update dependencies (#45)
Automated changes by
[create-pull-request](https://github.com/peter-evans/create-pull-request)
GitHub action
2024-01-26 12:01:23 +01:00
kbz_8 1dd24f687c adding check to texture pointers 2024-01-26 11:59:57 +01:00
Kbz-8 1e2f2880ae [BOT] update dependencies 2024-01-26 01:04:35 +00:00
kbz_8 eaf2d00864 yes (#43) 2024-01-24 17:54:37 +01:00
kbz_8 528867bc7b Merge branch 'master' into indev 2024-01-24 17:49:53 +01:00
kbz_8 fab193db38 yes 2024-01-24 17:49:38 +01:00
kbz_8 3f4dcad12f adding rule to gitignore 2024-01-20 08:54:28 +01:00
kbz_8 a461624fea improving descriptor sets and pools management (#41) 2024-01-20 08:53:13 +01:00
kbz_8 77ab3bf68c improving descriptor sets and pools management 2024-01-20 08:46:50 +01:00
kbz_8 982b8c17f4 adding fps capper (#40) 2024-01-18 15:31:37 +01:00
kbz_8 d857d598e8 Merge branch 'master' into indev 2024-01-18 15:28:20 +01:00
kbz_8 a3af54f271 adding fps capper 2024-01-18 15:25:13 +01:00
kbz_8 48133e3432 fixing texts allocation issues (#39) 2024-01-18 14:23:05 +01:00
kbz_8 6143e8b1c5 Merge branch 'master' into indev 2024-01-18 13:59:37 +01:00
kbz_8 dd0599c088 fixing allocation issues with texts 2024-01-18 13:57:41 +01:00
Kbz-8 208b0e4710 fixing shit 2024-01-17 07:41:15 +01:00
kbz_8 209472d0a1 i dont know chat i did i was high as f*ck 2024-01-17 05:30:38 +01:00
kbz_8 708e509bfa fixing issue with swapchain recreation 2024-01-16 07:19:27 +01:00
kbz_8 47aead9e2d oh the misery (#38)
Fixed a bug and modified the example/main.c to test all mlx functions 

![image](https://github.com/seekrs/MacroLibX/assets/105780726/d9946f1f-4e97-453f-87a6-953ffd0ad52d)
2024-01-12 14:56:14 +01:00
Namonay 9024b9cc12 upgraded example to test all mlx functions 2024-01-12 04:25:12 +01:00
Namonay 0bd6f17260 Fixed mlx_mouse_move() not updating mouse position
Removed SDL_FlushEvent(SDL_MOUSEMOTION) preventing Input::update() from catching new mouse position after a mlx_mouse_move() call
2024-01-12 04:24:24 +01:00
kbz_8 a0d5cea21f Preventing some segfaults (#37)
![nerd](https://github.com/seekrs/MacroLibX/assets/105780726/74152e81-029a-4f35-afda-11e6411646bf)
2024-01-12 01:51:51 +01:00
Namonay 2c9c4217ec Merge branch 'seekrs:indev' into indev 2024-01-12 01:28:25 +01:00
Namonay 39298eda36 Added protections to THE bridge 2024-01-12 01:27:02 +01:00
kbz_8 99e6267489 improving vsupp 2024-01-12 00:49:42 +01:00
kbz_8 4835ff0337 Indev (#36) 2024-01-11 15:53:39 +01:00
kbz_8 7f1dd999bf Merge branch 'master' into indev 2024-01-11 15:48:15 +01:00
kbz_8 088e1891fc fixing compilation error 2024-01-11 15:47:45 +01:00
kbz_8 18d0f102ec fixing vsupp missing character 2024-01-11 15:46:11 +01:00
kbz_8 e060cf39f9 merge indev to master (#35) 2024-01-11 05:32:13 +01:00
kbz_8 7de0758f76 Merge branch 'master' into indev 2024-01-11 05:27:21 +01:00
kbz_8 189764dc34 new text management, texts and textures are on the same level, new texture rendering management, fixing issues 2024-01-11 05:23:16 +01:00
kbz_8 875d73e3dd fixing color management issue with texts 2024-01-10 20:22:53 +01:00
kbz_8 62c623d70a adding xmake profiler option 2024-01-10 18:49:54 +01:00
kbz_8 05ba165c45 adding profiler (#34) 2024-01-10 18:48:52 +01:00
kbz_8 944038e564 fixing windows compilation issue 2024-01-10 18:37:14 +01:00
kbz_8 fb6bda24a6 adding profiler 2024-01-10 18:32:40 +01:00
kbz_8 c3ffb80a10 Indev (#33)
Indev
2024-01-09 01:42:36 +01:00
Namonay 0acb086819 added back not so much 'unnecesary' include 2024-01-09 01:37:01 +01:00
Namonay b14468eed1 removed useless includes 🤓 2024-01-09 01:28:50 +01:00
Namonay f9d1234642 update buid.sh 2024-01-09 01:01:31 +01:00
Namonay 44d76a3b9e Fixed brief typo 2024-01-09 00:31:39 +01:00
kbz_8 aa97d048b8 fixing norme issue in the example 2024-01-09 00:25:23 +01:00
kbz_8 887e2b8699 fixing issue with vulkan queues on multiple GPU computers 2024-01-08 23:50:00 +01:00
kbz_8 c64cb4ac67 fixing issue with fonts vulkan descriptor destroyed 2024-01-08 22:18:45 +01:00
kbz_8 c88d9f1d9d Better vk commands management (#31) 2024-01-07 01:49:40 +01:00
kbz_8 15b54a15c8 figin another MacOS compilation error 2024-01-07 01:45:12 +01:00
kbz_8 348dff8140 fixing compilation issues 2024-01-07 01:40:19 +01:00
kbz_8 6e4322e1ba removing gdb garbage file 2024-01-07 01:35:18 +01:00
kbz_8 a9cd7375f6 fixing better vk command buffers management 2024-01-07 01:34:02 +01:00
kbz_8 6d053a6941 update dependencies (#30)
Automated changes by
[create-pull-request](https://github.com/peter-evans/create-pull-request)
GitHub action
2024-01-06 14:09:23 +01:00
Kbz-8 02819d281e [BOT] update dependencies 2024-01-06 01:06:21 +00:00
kbz_8 c24d961211 working on cmd resources management 2024-01-05 23:13:35 +01:00
kbz_8 b3ba952218 fixing 32bit vulkan issue 2024-01-04 12:27:31 +01:00
kbz_8 c8382eddbf yes (#29) 2024-01-03 15:49:18 +01:00
kbz_8 7c8f233cc8 Merge branch 'better_vk_commands' into indev 2024-01-03 15:47:31 +01:00
kbz_8 84ded2734d fixing gitignore file 2024-01-03 15:45:24 +01:00
kbz_8 c4cb077043 merge Indev to master (#28) 2024-01-03 15:38:38 +01:00
kbz_8 09829ed104 fixing compilation issue 2024-01-03 15:33:46 +01:00
kbz_8 988ccf32db fixing windows compilation issue 2024-01-03 15:30:35 +01:00
kbz_8 4ab70c2c35 Merge branch 'master' into indev 2024-01-03 15:17:17 +01:00
kbz_8 ae6c4710c8 improving vulkan error messages 2024-01-03 15:15:38 +01:00
kbz_8 1a19c55568 adding greetings 2024-01-03 00:30:45 +01:00
kbz_8 1ef45ebba2 fixing the workflows 2024-01-03 00:07:38 +01:00
kbz_8 0cba8d011e updating license year, fixing fetch dependencies script, adding VMA auto update, removing useless dependency in xmake build 2024-01-03 00:01:30 +01:00
kbz_8 79436b7068 Update fetch_dependencies.yml (#27) 2024-01-02 12:04:00 +01:00
kbz_8 e15aa45627 Merge branch 'master' into indev 2024-01-02 11:56:57 +01:00
kbz_8 0beb25ce92 Update fetch_dependencies.yml 2024-01-02 11:56:10 +01:00
kbz_8 86714c3dd4 merge Indev to master (#26) 2024-01-02 11:46:45 +01:00
kbz_8 3aa5c20dbc debug fetch_dependencies.yml 2024-01-02 11:28:11 +01:00
kbz_8 a1e5eb9254 adding note to README 2023-12-31 14:34:52 +01:00
kbz_8 60bacab2e4 working automated dependencies updates, polishing the CI 2023-12-31 14:17:24 +01:00
kbz_8 19a895c5f4 update dependencies (#25)
Automated changes by
[create-pull-request](https://github.com/peter-evans/create-pull-request)
GitHub action
2023-12-31 13:48:27 +01:00
kbz_8 bd0a111e5f debugging CI 2023-12-31 13:47:56 +01:00
Kbz-8 cbed1b7653 update dependencies 2023-12-31 12:47:00 +00:00
kbz_8 5f33613583 debugging CI 2023-12-31 13:46:45 +01:00
kbz_8 198600b853 debugging CI 2023-12-31 13:45:25 +01:00
kbz_8 32b5338187 debugging CI 2023-12-31 13:44:37 +01:00
kbz_8 d5e1e36a5d debugging CI 2023-12-31 13:41:09 +01:00
kbz_8 2bc0b94626 debugging CI 2023-12-31 13:34:11 +01:00
kbz_8 46ec35cfd7 debugging CI 2023-12-31 13:31:22 +01:00
kbz_8 9103138ee5 debugging CI 2023-12-31 13:30:32 +01:00
kbz_8 f502c86400 fixing compilation errors with local vulkan headers 2023-12-31 13:21:40 +01:00
kbz_8 d38fd8eeb1 test automated dependencies updates 2023-12-31 13:12:37 +01:00
kbz_8 16424cc2e3 Kbz 8 patch 1 (#23) 2023-12-31 11:57:44 +01:00
kbz_8 a2a1339736 Create dependabot.yml 2023-12-31 11:57:19 +01:00
kbz_8 8fa6fd35d0 merge Indev to master (#22)
yes
2023-12-31 01:41:39 +01:00
kbz_8 23333da539 Merge branch 'master' into indev 2023-12-31 01:38:11 +01:00
kbz_8 939b224b64 AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAH x2 2023-12-31 01:30:17 +01:00
kbz_8 e245c27867 AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAH 2023-12-31 01:27:37 +01:00
kbz_8 d172ea89fc I hate SDL_main on windows 2023-12-31 01:24:10 +01:00
kbz_8 075a8718de fuck SDL_main on windows 2023-12-31 01:14:17 +01:00
kbz_8 5f04c34aa0 fixing SDL issue on windows 2023-12-31 01:08:41 +01:00
kbz_8 8774d4c3fb adding transparency support to pixel put 2023-12-28 16:59:36 +01:00
kbz_8 a2f9594811 Update xmake.lua 2023-12-28 01:13:40 +01:00
kbz_8 ac3b28c922 fixing issue when creating multiple mlx application with leaks in the first one 2023-12-28 01:06:03 +01:00
kbz_8 b144afd3fe adding frame capture feature (#21) 2023-12-25 16:18:42 +01:00
kbz_8 c88ff1525d fixing frame capture 2023-12-24 16:07:09 +01:00
kbz_8 522975bf8b working on frame capture 2023-12-23 01:53:54 +01:00
kbz_8 8b9d23a17a adding possible new feature 2023-12-22 23:21:24 +01:00
kbz_8 252f9c3da0 adding CONTRIBUTIN.md 2023-12-22 01:24:55 +01:00
kbz_8 74b30ea218 fixing issue with static casts 2023-12-22 00:45:06 +01:00
kbz_8 ca13d77996 adding error messages when using a corrupted window pointer, dropping SDL init responsability when running in sandbox 2023-12-21 00:28:53 +01:00
kbz_8 5d80fd87f4 merge indev to master (#20) 2023-12-20 17:50:38 +01:00
kbz_8 9f555316fc Merge branch 'master' into indev 2023-12-20 17:38:06 +01:00
kbz_8 b384ebec1b working on better command buffers management 2023-12-20 16:35:52 +01:00
kbz_8 899ad8de70 Change github links to reflect organisation change (#19) 2023-12-20 01:03:42 +01:00
xtrm d25cfc5975 🐛 fix: change github links to reflect organisation change
Signed-off-by: xtrm <oss@xtrm.me>
2023-12-20 00:58:24 +01:00
kbz_8 66359574f9 Merge pull request #18 from 420verfl0w/errors-everywhere
Errors everywhere
2023-12-16 20:32:04 +01:00
kbz_8 6f0f944fbe removing GCC error 2023-12-16 20:20:51 +01:00
kbz_8 72cc2eb9ab adding error checks 2023-12-16 20:17:49 +01:00
kbz_8 73c8e331af new branch for error management 2023-12-16 18:51:51 +01:00
kbz_8 719dfea21c fixing compilation error 2023-12-16 02:14:23 +01:00
kbz_8 4a6a525847 updating readme 2023-12-16 02:11:54 +01:00
kbz_8 eb7330a943 Merge pull request #17 from 420verfl0w/indev
merge dev to master
2023-12-15 21:13:53 +01:00
kbz_8 2d89f41639 fixing issue when destroying an image in the loop hook, begenning single time command buffers manager 2023-12-15 21:08:46 +01:00
kbz_8 a86eab4386 updating README 2023-12-15 18:08:22 +01:00
kbz_8 e2ee1f2820 Merge pull request #16 from 420verfl0w/multiple-fonts
merge Multiple fonts in dev
2023-12-14 20:12:44 +01:00
kbz_8 280c1c076f Merge branch 'indev' into multiple-fonts 2023-12-14 19:21:12 +01:00
kbz_8 c7e59cbbeb adding multiple font support 2023-12-14 19:13:41 +01:00
kbz_8 8b2d9d15bd Merge pull request #15 from 420verfl0w/indev
removing buggy texture hash system
2023-12-14 14:44:10 +01:00
kbz_8 c2258115d7 removing buggy texture hash system 2023-12-14 14:39:00 +01:00
kbz_8 7d7ed1caba Merge pull request #14 from 420verfl0w/indev
merge dev to master
2023-12-14 13:56:28 +01:00
kbz_8 6435cc8333 fixing issues with texture rendering 2023-12-14 13:51:17 +01:00
kbz_8 a0a764d6a2 yes 2023-12-14 00:08:38 +01:00
kbz_8 74f2306e6c removed garbage file 2023-12-13 16:06:43 +01:00
kbz_8 c0e2750fb3 working on font system 2023-12-13 00:33:34 +01:00
kbz_8 5093e7d1eb Merge pull request #13 from 420verfl0w/indev
Indev
2023-12-12 18:49:48 +01:00
kbz_8 db86779907 Merge pull request #12 from 420verfl0w/macos-debug
Macos debug
2023-12-12 18:21:36 +01:00
kbz_8 a387e34d3c fixing CI 2023-12-12 18:12:41 +01:00
kbz_8 f9d729d30b fixing CI 2023-12-12 18:07:58 +01:00
kbz_8 fc3382f984 macos debug 2023-12-12 18:04:27 +01:00
kbz_8 7dda5d5624 macos debug 2023-12-12 17:58:49 +01:00
kbz_8 44d7c7e4fd macos debug 2023-12-12 17:47:10 +01:00
kbz_8 99678c2bb3 adding message when vk res init fails 2023-12-12 15:53:57 +01:00
kbz_8 bcfd5ef454 adding message when instance init fails 2023-12-12 15:46:47 +01:00
kbz_8 d2fb0e0e83 fixing run file and lib name on macos 2023-12-12 13:27:19 +01:00
kbz_8 56c11352bc removing unused files 2023-12-12 13:08:34 +01:00
kbz_8 e297b8a05a fxing macos libraries location issue 2023-12-12 13:08:00 +01:00
kbz_8 b9e0540a1b Merge pull request #11 from 420verfl0w/indev
merge dev to master
2023-12-11 23:53:56 +01:00
kbz_8 f34161fa81 Merge pull request #10 from 420verfl0w/indev
Indev
2023-12-11 20:41:15 +01:00
kbz_8 3ab024cced fixing DLL API import error 2023-12-11 20:36:21 +01:00
kbz_8 4d6c970a71 moving profile to API scope 2023-12-11 20:28:58 +01:00
kbz_8 e8f4056b81 Merge pull request #8 from 420verfl0w/vsupp-debug
Vsupp debug
2023-12-11 19:36:32 +01:00
kbz_8 5d52517d37 Merge pull request #7 from 420verfl0w/malloc-custom
improving custom malloc, removing unused code in input system
2023-12-11 19:35:38 +01:00
kbz_8 0a7a082d24 improving custom malloc, removing unused code in input system 2023-12-11 19:30:37 +01:00
kbz_8 5c497e4175 removing error 2023-12-11 13:53:40 +01:00
kbz_8 6b54089066 fixing vsupp issue, cleaning it 2023-12-11 13:40:05 +01:00
kbz_8 5f6a28f4f8 fixing warning issue with clang 2023-12-10 23:15:59 +01:00
kbz_8 49f6bb4b71 suppress warnings 2023-12-10 23:12:22 +01:00
kbz_8 1105bc6646 Merge pull request #6 from 420verfl0w/indev
merge Indev to master
2023-12-09 23:41:55 +01:00
kbz_8 36bd11fdf5 updating readmes 2023-12-09 23:33:02 +01:00
kbz_8 a5e4b41ceb updating readmes 2023-12-09 23:18:28 +01:00
kbz_8 a260be573a Merge pull request #5 from 420verfl0w/indev
merge Indev to master
2023-12-09 18:13:55 +01:00
kbz_8 327374d53b improving vsupp file 2023-12-09 18:02:30 +01:00
kbz_8 57da195bf9 improving vsupp file 2023-12-09 16:23:38 +01:00
kbz_8 d9de06a000 adding vsupp file 2023-12-09 15:46:32 +01:00
kbz_8 0a4bd42869 Merge pull request #4 from 420verfl0w/windows-support
Merge windows support into dev
2023-12-09 13:40:45 +01:00
kbz_8 fc3f72ee3e Merge branch 'windows-support' of github.com:420verfl0w/MacroLibX into windows-support 2023-12-09 13:25:30 +01:00
kbz_8 d5e263390e adding build readme for xmake, fixing windows workflow 2023-12-09 13:24:40 +01:00
kbz_8 a437316723 removing exe file 2023-12-08 23:34:19 +01:00
kbz_8 555af79e9e fixing windows dll issues 2023-12-08 23:33:26 +01:00
kbz_8 038a6db77f adding symbols to dll on windows 2023-12-08 19:13:25 +01:00
kbz_8 b078165849 adding symbols to dll on windows 2023-12-08 18:56:33 +01:00
kbz_8 591c144104 fixing cross compilation issue 2023-12-08 18:09:08 +01:00
kbz_8 0b6b0b4902 debugging windows CI 2023-12-08 16:37:42 +01:00
kbz_8 51bd482acc debugging windows CI 2023-12-08 15:57:45 +01:00
kbz_8 a68f8ede72 fixing syntax error in windows workflow 2023-12-08 14:48:28 +01:00
kbz_8 f844c3ad58 removing garbage files 2023-12-08 14:12:41 +01:00
kbz_8 b84350f76d adding xmake support and windows workflow 2023-12-08 14:11:48 +01:00
kbz_8 9d89019af3 Merge pull request #3 from 420verfl0w/indev
Merge from dev to master
2023-12-08 13:00:24 +01:00
kbz_8 ce2966e1b5 fixing issue in 42 header 2023-12-08 12:56:59 +01:00
kbz_8 5184e9500d adding mouse wheel support 2023-12-08 12:24:20 +01:00
kbz_8 bfcc8cb758 removing garbage files 2023-12-07 23:20:25 +01:00
kbz_8 854a074cac fixing memory leaks, begenning xmake support to build on windows 2023-12-07 23:19:56 +01:00
kbz_8 53c0f08bc1 fixing weird X in logo 2023-11-25 14:26:05 +01:00
kbz_8 683ef90ddb Update README.md 2023-11-25 13:13:57 +01:00
kbz_8 6c0c4c127a update logo size 2023-11-25 12:48:16 +01:00
kbz_8 e1b3f4d995 working on readme 2023-11-25 12:47:07 +01:00
kbz_8 df7aeb11bb working on readme 2023-11-25 12:31:09 +01:00
kbz_8 f634b14998 adding logo 2023-11-25 12:23:57 +01:00
kbz_8 1407e6217c update readme 2023-11-25 10:44:51 +01:00
kbz_8 f0676c950d adding screenshot te readme 2023-11-25 10:44:24 +01:00
kbz_8 05f6a810bf adding screenshot te readme 2023-11-25 10:44:00 +01:00
kbz_8 7dc5701eff adding screenshot te readme 2023-11-25 10:43:05 +01:00
kbz_8 db91730e13 transparency management added 2023-11-25 10:31:06 +01:00
kbz_8 df29e41ac5 improving font management 2023-11-24 19:34:15 +01:00
kbz_8 a158aa2269 removing gdb history 2023-11-23 14:37:58 +01:00
kbz_8 d5a8b96be8 new feature, font loading 2023-11-23 14:37:42 +01:00
kbz_8 9f869d93e2 Update README.md 2023-11-21 07:14:32 +01:00
kbz_8 20068b0ff3 Update README.md 2023-11-21 07:14:08 +01:00
kbz_8 d28b41dab5 moving to MIT license 2023-11-21 07:13:15 +01:00
kbz_8 5e63cd8959 fixing compilation error 2023-11-20 07:29:36 +01:00
kbz_8 6b970e988a fixing spaces in indentaions 2023-11-20 07:28:03 +01:00
kbz_8 8954e4e189 fixed error message for image file loading 2023-11-18 17:57:06 +01:00
kbz_8 19ccc1230e cleaning renderpass, framebuffers and swapchain code, setting all vulkan resources to NULL after destroy 2023-11-18 17:25:30 +01:00
kbz_8 519691a944 fixing GCC warning 2023-11-16 14:07:02 +01:00
kbz_8 e4df341a66 removing a trash file 2023-11-16 14:05:16 +01:00
kbz_8 d1613ddfdb removing all memory dump strings informations in release mode 2023-11-16 14:04:51 +01:00
kbz_8 e471585946 fixing memory management issue, VMA uses custom asserts 2023-11-14 12:46:51 +01:00
kbz_8 6a2a3739c7 updating readme, improving buffer transfer to GPU 2023-11-14 07:46:06 +01:00
kbz_8 6c3db4a8db fixing macos warning 2023-11-14 07:22:38 +01:00
kbz_8 02d2dbb1bd fixing rendering issues 2023-11-14 07:07:43 +01:00
kbz_8 942deade55 removing vim command in code 2023-11-11 03:32:43 +01:00
kbz_8 b75f543977 fixing physical device pick issues 2023-11-11 03:30:29 +01:00
kbz_8 ea6c2a3335 fixing GCC CI 2023-11-10 09:21:58 +01:00
kbz_8 22c9e14947 fixing compilation issues, adding profile 2023-11-10 09:19:47 +01:00
kbz_8 9c54cb6c68 working on buffers 2023-11-09 22:17:25 +01:00
kbz_8 6acd433437 deleting clangd garbage 2023-11-09 09:07:30 +01:00
kbz_8 4e5fb2648a adding debug messages to renderer, working on VMA implementation 2023-11-09 09:07:03 +01:00
kbz_8 be8caa922c Merge pull request #1 from 27network/feature/better-readme
Improve project's README.
2023-10-30 14:13:09 +01:00
kbz_8 735f748b79 Update README.md 2023-10-30 14:10:48 +01:00
xtrm 5108134a5f Change the names of the workflows to look better in the README
Signed-off-by: xtrm <oss@xtrm.me>
2023-10-30 01:28:00 +01:00
killian 9dfd3ab971 Rework README.md and add better formatting and form 2023-10-30 01:26:35 +01:00
kbz_8 0134e4e55d debugging CI 2023-10-20 03:33:31 +02:00
kbz_8 5d4ab828ed debugging CI 2023-10-19 23:48:00 +02:00
kbz_8 7f393fdcd5 debugging CI 2023-10-19 23:44:52 +02:00
kbz_8 3c0abd6fe0 debugging CI 2023-10-19 23:31:36 +02:00
kbz_8 ded90b50bf debugging CI 2023-10-19 22:58:07 +02:00
kbz_8 9677be6d9e debugging CI 2023-10-19 21:38:11 +02:00
kbz_8 a4cf2ee80f debugging CI 2023-10-19 21:37:08 +02:00
kbz_8 2951253b15 debugging CI 2023-10-19 21:23:53 +02:00
kbz_8 e8ab351963 debugging CI 2023-10-19 21:21:52 +02:00
kbz_8 1242eac872 debugging CI 2023-10-19 21:21:33 +02:00
kbz_8 6f25472e6b debugging CI 2023-10-19 21:20:18 +02:00
kbz_8 de9250dd42 debugging CI 2023-10-19 21:17:31 +02:00
kbz_8 8fee417803 debugging CI 2023-10-19 21:08:10 +02:00
kbz_8 426da22b52 debugging CI 2023-10-19 20:44:40 +02:00
kbz_8 b0968adf1c CI 2023-10-19 20:35:17 +02:00
kbz_8 7f7d197e42 adding SDL initialisation and quit, improving inputs code readability 2023-08-28 10:53:22 +02:00
kbz_8 d90ab27489 Update mlx.h 2023-08-10 08:52:46 +02:00
kbz_8 d2b8834675 Update Makefile 2023-08-10 08:46:31 +02:00
kbz_8 4e4103f86b adding image optimizations control over make call 2023-08-09 13:51:50 +02:00
kbz_8 26037936e8 adding image optimizations control over make call 2023-08-09 13:50:33 +02:00
kbz_8 bc84808333 fixing get pixel image issue 2023-08-02 12:52:38 +02:00
kbz_8 4e1832e59d fixing performance issues 2023-08-02 12:51:04 +02:00
kbz_8 a70bec4740 fixing performance issues 2023-08-02 12:50:50 +02:00
kbz_8 f6fcb214e5 yes 2023-06-06 16:35:08 +02:00
kbz_8 6a8d55dbe8 reworking texture modifiers 2023-04-25 22:14:01 +02:00
kbz_8 cb4e9dbe8d adding multiple mapping support on textures 2023-04-23 22:11:44 +02:00
kbz_8 6d3421d7f4 removing texture library 2023-04-21 22:17:55 +02:00
kbz_8 f6736f210a adding documentation to mlx.h 2023-04-19 12:36:59 +02:00
kbz_8 e7d65a297e fixing color bug 2023-04-19 11:51:13 +02:00
kbz_8 c497645ee9 working on colors issue 2023-04-14 12:29:17 +02:00
kbz_8 4fa9873f44 working input API 2023-04-12 21:53:14 +02:00
kbz_8 fe45d0953d fixing performance issue in text pipeline, working on event system 2023-04-12 15:15:25 +02:00
kbz_8 ec0f2eaa60 fixing color issues with texts 2023-04-11 23:42:27 +02:00
kbz_8 06a95fae73 working text pipeline 2023-04-11 19:21:11 +02:00
kbz_8 098622c6b9 working text pipeline 2023-04-11 13:21:11 +02:00
kbz_8 599f1007ab almost fixing text rendering 2023-04-08 20:45:06 +02:00
kbz_8 157a099ed2 working on text render pipeline 2023-04-08 04:09:25 +02:00
kbz_8 77e8672754 adding texture atlas class 2023-04-07 17:27:23 +02:00
kbz_8 10ff1acd89 adding stb_truetype 2023-04-07 13:47:22 +02:00
kbz_8 bada255057 working on text put pipeline 2023-04-06 17:26:19 +02:00
kbz_8 b03bd6fe0a removing xpm support bc frick xpm 2023-04-06 15:30:01 +02:00
kbz_8 fbe97415cf working on xpm support 2023-04-06 12:56:36 +02:00
kbz_8 27000b6163 working on xpm support 2023-04-05 01:11:49 +02:00
kbz_8 c85c12bfaf working on xpm implementation 2023-04-04 15:41:45 +02:00
kbz_8 d02f04c294 working on event system 2023-04-04 12:40:47 +02:00
kbz_8 21962dda90 adding manual image manipulation 2023-04-03 00:01:13 +02:00
kbz_8 aaf7e861d5 adding graphics support class, refactoring the code 2023-04-02 17:37:38 +02:00
kbz_8 7eea6ea1d5 adding clear window 2023-04-01 17:51:29 +02:00
kbz_8 28850a6cb8 working textures 2023-04-01 15:48:28 +02:00
kbz_8 2ab87dd3ad working pixel put pipeline 2023-04-01 13:03:21 +02:00
kbz_8 88404afb2b adding pixel put pipeline 2023-03-31 22:16:21 +02:00
kbz_8 3b29305936 yes 2023-03-08 02:25:25 +01:00
kbz_8 8ca0b041e3 adding vulkan images, start using images for put_pixel 2023-01-25 21:46:58 +01:00
kbz_8 e74d218d6e doing some stuff 2023-01-24 20:06:00 +01:00
kbz_8 b66476ef4f adding uniform buffers and projection matrix management in vertex shader 2023-01-24 17:27:55 +01:00
kbz_8 006d665ce2 adding descriptors support to renderer 2023-01-23 19:27:37 +01:00
kbz_8 c8302b4fdf rendering 2022-12-19 17:16:50 +01:00
kbz_8 2c6c3a945e almost first rendering, fixing renderer issues 2022-12-19 00:59:45 +01:00
kbz_8 c907c52968 fixing compatibility, workign on renderer 2022-12-18 04:04:10 +01:00
kbz_8 b275918de6 working on window manager 2022-10-05 20:37:04 +02:00
kbz_8 3ee3a5899b adding imputs system 2022-10-05 17:08:36 +02:00
95 changed files with 267880 additions and 165475 deletions
+1
View File
@@ -7,5 +7,6 @@ version: 2
updates:
- package-ecosystem: "github-actions" # See documentation for possible values
directory: "/" # Location of package manifests
target-branch: "indev"
schedule:
interval: "weekly"
+9 -4
View File
@@ -1,6 +1,7 @@
name: Fetch Dependencies
on:
workflow_dispatch:
schedule:
- cron: '0 0 * * 0' # Runs weekly
@@ -10,20 +11,24 @@ jobs:
steps:
- name: Checkout Repository
uses: actions/checkout@v4
uses: actions/checkout@v6
- name: Run Fetch Dependencies Script
run: cd scripts && bash ./fetch_dependencies.sh
- name: Create Pull Request
uses: peter-evans/create-pull-request@v6
uses: peter-evans/create-pull-request@v8
with:
token: ${{ secrets.REPO_SCOPED_TOKEN }}
delete-branch: true
title: update dependencies
commit-message: "[BOT] update dependencies"
committer: GitHub <noreply@github.com>
author: ${{ github.actor }} <${{ github.actor }}@users.noreply.github.com>
committer: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
author: kbJeff-8 <kbJeff-8@users.noreply.github.com>
signoff: false
base: indev
assignees: Kbz-8
reviewers: Kbz-8
branch: auto_deps_updates
labels: |
automated
+3 -1
View File
@@ -1,6 +1,8 @@
name: Linux (clang)
on:
repository_dispatch:
types: [create-pull-request]
pull_request:
push:
paths-ignore:
@@ -21,7 +23,7 @@ jobs:
steps:
- name: Checkout repository
uses: actions/checkout@v4
uses: actions/checkout@v6
- name: Install system dependencies
run: |
+3 -1
View File
@@ -1,6 +1,8 @@
name: Linux (gcc)
on:
repository_dispatch:
types: [create-pull-request]
pull_request:
push:
paths-ignore:
@@ -21,7 +23,7 @@ jobs:
steps:
- name: Checkout repository
uses: actions/checkout@v4
uses: actions/checkout@v6
- name: Install system dependencies
run: |
+43
View File
@@ -0,0 +1,43 @@
name: Linux (meson)
on:
repository_dispatch:
types: [create-pull-request]
pull_request:
push:
paths-ignore:
- '.gitignore'
- 'LICENSE'
- 'README.md'
jobs:
build:
strategy:
fail-fast: false
matrix:
os: [ubuntu-24.04]
arch: [x86_64]
runs-on: ${{ matrix.os }}
if: "!contains(github.event.head_commit.message, 'ci skip')"
steps:
- name: Checkout repository
uses: actions/checkout@v6
- name: Install system dependencies
run: |
sudo apt-get update
sudo apt-get -y install mesa-common-dev clang libsdl2-2.0-0 libsdl2-dev build-essential libvulkan-dev
- name: Python
uses: actions/setup-python@v6
with:
python-version: '3.11'
- name: Install Meson with pip
run: sudo pip3 install meson
- name: Build with meson
run: |
meson build --prefix=$PWD/ --bindir='' --libdir=''
ninja install -C build
@@ -1,6 +1,8 @@
name: macOS
on:
repository_dispatch:
types: [create-pull-request]
pull_request:
push:
paths-ignore:
@@ -14,14 +16,14 @@ jobs:
fail-fast: false
matrix:
os: [macOS-latest]
arch: [x86_64]
arch: [x86_64, arm]
runs-on: ${{ matrix.os }}
if: "!contains(github.event.head_commit.message, 'ci skip')"
steps:
- name: Checkout repository
uses: actions/checkout@v4
uses: actions/checkout@v6
# Install system dependencies
- name: Install Dependancies
+42
View File
@@ -0,0 +1,42 @@
name: macOS (meson)
on:
repository_dispatch:
types: [create-pull-request]
pull_request:
push:
paths-ignore:
- '.gitignore'
- 'LICENSE'
- 'README.md'
jobs:
build:
strategy:
fail-fast: false
matrix:
os: [macOS-latest]
arch: [x86_64, arm]
runs-on: ${{ matrix.os }}
if: "!contains(github.event.head_commit.message, 'ci skip')"
steps:
- name: Checkout repository
uses: actions/checkout@v6
- name: Install system dependencies
run: |
brew install SDL2
- name: Python
uses: actions/setup-python@v6
with:
python-version: '3.11'
- name: Install Meson with pip
run: sudo pip3 install meson
- name: Build with meson
run: |
meson build --prefix=$PWD/ --bindir='' --libdir=''
ninja install -C build
+5 -3
View File
@@ -1,6 +1,8 @@
name: Unit tests
on:
repository_dispatch:
types: [create-pull-request]
pull_request:
push:
paths-ignore:
@@ -21,9 +23,9 @@ jobs:
steps:
- name: Checkout repository
uses: actions/checkout@v4
uses: actions/checkout@v6
- uses: NcStudios/VulkanCI@v1.0
- uses: NcStudios/VulkanCI@v1.2
- name: Install system dependencies
run: |
@@ -67,7 +69,7 @@ jobs:
# Save dependencies
- name: Save cached xmake dependencies
if: ${{ !steps.restore-depcache.outputs.cache-hit }}
uses: actions/cache/save@v4
uses: actions/cache/save@v5
with:
path: ${{ env.XMAKE_GLOBALDIR }}/.xmake/packages
key: ${{ steps.restore-depcache.outputs.cache-primary-key }}
+4 -2
View File
@@ -1,6 +1,8 @@
name: Windows (xmake)
on:
repository_dispatch:
types: [create-pull-request]
pull_request:
push:
paths-ignore:
@@ -14,7 +16,7 @@ jobs:
fail-fast: false
matrix:
os: [windows-latest]
arch: [x64]
arch: [x64, x86]
mode: [release]
runs-on: ${{ matrix.os }}
@@ -26,7 +28,7 @@ jobs:
run: echo "key=$(date +'%W')" >> $GITHUB_OUTPUT
- name: Checkout repository
uses: actions/checkout@v4
uses: actions/checkout@v6
# Force xmake to a specific folder (for cache)
- name: Set xmake env
+109
View File
@@ -0,0 +1,109 @@
name : Windows (Meson)
on:
repository_dispatch:
types: [create-pull-request]
pull_request:
push:
paths-ignore:
- '.gitignore'
- 'LICENSE'
- 'README.md'
jobs:
VisualStudio:
if: "!contains(github.event.head_commit.message, 'ci skip')"
runs-on: windows-latest
strategy:
fail-fast: false
matrix:
platform: ['x64', 'x86']
steps:
- uses: actions/checkout@v6
with:
fetch-depth: 0
# Install a 32-bit Python so building related stuff work.
- name: Setup x86 Python
if: matrix.platform == 'x86'
uses: actions/setup-python@v6
with:
architecture: 'x86'
python-version: '3.12'
- name: Install Meson & Ninja
run: |
python -m pip install meson ninja
- uses: ilammy/msvc-dev-cmd@v1
with:
arch: ${{matrix.platform}}
- name: Compile mlx
run: |
meson setup builddir
meson compile -C builddir
VisualStudio-clang-cl:
if: "!contains(github.event.head_commit.message, 'ci skip')"
runs-on: windows-latest
strategy:
fail-fast: false
env:
CC: clang-cl
CXX: clang-cl
steps:
- uses: actions/checkout@v6
with:
fetch-depth: 0
- name: Install Meson & Ninja
run: |
python -m pip install meson ninja
- uses: ilammy/msvc-dev-cmd@v1
- name: Compile mlx
run: |
meson setup builddir
meson compile -C builddir
MSYS2:
if: "!contains(github.event.head_commit.message, 'ci skip')"
runs-on: windows-latest
strategy:
fail-fast: false
matrix:
platform: ['UCRT64', 'CLANG64']
steps:
- uses: actions/checkout@v6
with:
fetch-depth: 0
- uses: msys2/setup-msys2@v2
with:
msystem: ${{matrix.platform}}
install: >-
bison
dos2unix
flex
git
pacboy: >-
cc:p
cmake:p
ninja:p
pkgconf:p
python-certifi:p
python-pip:p
# Make sure Python is updated to >=3.11 (fix https://github.com/msys2/MINGW-packages/issues/17415).
update: true
- name: Install Meson
shell: msys2 {0}
run: |
python -m pip install meson
- name: Compile mlx
shell: msys2 {0}
run: |
meson setup builddir
meson compile -C builddir
+2
View File
@@ -23,3 +23,5 @@
objs/
build/
example/Test
subprojects/*/
subprojects/.wraplock
+1 -1
View File
@@ -1,5 +1,5 @@
MIT License
Copyright (c) 2022-2024 kbz_8
Copyright (c) 2022-2026 kbz_8
Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
-10
View File
@@ -4,8 +4,6 @@ MAKE = make --no-print-directory
OS ?= $(shell uname -s)
DEBUG ?= false
TOOLCHAIN ?= clang
IMAGES_OPTIMIZED ?= true
FORCE_INTEGRATED_GPU ?= false
GRAPHICS_MEMORY_DUMP ?= false
PROFILER ?= false
FORCE_WAYLAND ?= false
@@ -65,14 +63,6 @@ else
CXXFLAGS += -O3
endif
ifeq ($(FORCE_INTEGRATED_GPU), true)
_ENABLEDFLAGS += FORCE_INTEGRATED_GPU
endif
ifeq ($(IMAGES_OPTIMIZED), true)
_ENABLEDFLAGS += IMAGE_OPTIMIZED
endif
ifeq ($(GRAPHICS_MEMORY_DUMP), true)
_ENABLEDFLAGS += GRAPHICS_MEMORY_DUMP
endif
+1 -7
View File
@@ -3,7 +3,7 @@
<div align="center">
<a href="https://github.com/seekrs/MacroLibX/actions/workflows/linux_clang.yml"><img src="https://github.com/seekrs/MacroLibX/actions/workflows/linux_clang.yml/badge.svg"></a>
<a href="https://github.com/seekrs/MacroLibX/actions/workflows/linux_gcc.yml"><img src="https://github.com/seekrs/MacroLibX/actions/workflows/linux_gcc.yml/badge.svg"></a>
<a href="https://github.com/seekrs/MacroLibX/actions/workflows/macos_x86.yml"><img src="https://github.com/seekrs/MacroLibX/actions/workflows/macos_x86.yml/badge.svg"></a>
<a href="https://github.com/seekrs/MacroLibX/actions/workflows/macos.yml"><img src="https://github.com/seekrs/MacroLibX/actions/workflows/macos.yml/badge.svg"></a>
</div>
<div align="center">
<a href="https://github.com/seekrs/MacroLibX/actions/workflows/windows.yml"><img src="https://github.com/seekrs/MacroLibX/actions/workflows/windows.yml/badge.svg"></a>
@@ -103,12 +103,6 @@ MacroLibX has a strong safety support, mainly by checking every pointer that you
### 🛠️ Set the toolchain
If you want to use `GCC` to build the mlx you can use `make TOOLCHAIN=gcc`
### ⚠️⚠️⚠️ 🖼️ Image optimisations ⚠️⚠️⚠️
If you run into glitches when writing or reading pixels from images you can turn off images optimisations by using `make IMAGES_OPTIMIZED=false`.
### 🖥️ Force the integrated GPU (not recommended)
You can force the mlx to use your integrated GPU by using `make FORCE_INTEGRATED_GPU=true`. Note that there are a lot of chances that your application crashes by using that.
### 💽 Dump the graphics memory
The mlx can dump it's graphics memory use to json files every two seconds by enabling this option `make GRAPHICS_MEMORY_DUMP=true`.
+1 -7
View File
@@ -16,17 +16,11 @@ MacroLibX has a strong safety support, mainly by checking every pointer that you
### 🛠️ Set the toolchain
To change the compilation toolchain you can use `xmake config --toolchain=[gcc|clang|...]`
### ⚠️⚠️⚠️ 🖼️ Image optimisations ⚠️⚠️⚠️
If you run into glitches when writing or reading pixels from images you can turn off images optimisations by using `xmake config --images_optimized=n`.
### 🖥️ Force the integrated GPU (not recommended)
You can force the mlx to use your integrated GPU using `xmake config --force_integrated_gpu=y`. Note that there are a lot of chances that your application crashes by using that.
### 💽 Dump the graphics memory
The mlx can dump it's graphics memory use to json files every two seconds by enabling this option `xmake config --graphics_memory_dump=y`.
### 🪛 A possible build configuration
As a configuration example here's how the command can look like `xmake config --mode=debug --toolchain=clang --graphics_memory_dump=y --images_optimized=n`
As a configuration example here's how the command can look like `xmake config --mode=debug --toolchain=clang --graphics_memory_dump=y`
## 🚧 Build the lib
-1
View File
@@ -7,6 +7,5 @@
-DMLX_BUILD
-DSDL_MAIN_HANDLED
-DDEBUG
-DIMAGE_OPTIMIZED
-D_REENTRANT
-isystem/usr/include/SDL2
+7 -2
View File
@@ -44,11 +44,16 @@ void update(void* param)
mlx_set_font(mlx->mlx, "default");
mlx_string_put(mlx->mlx, mlx->win, 20, 50, (mlx_color){ .rgba = 0xFFFFFFFF }, "that's a text");
int win_width;
int win_height;
mlx_get_window_size(mlx->mlx, mlx->win, &win_width, &win_height);
uint32_t color = 0;
for(int j = 0; j < 400; j++)
for(int j = 0; j < win_height; j++)
{
mlx_pixel_put(mlx->mlx, mlx->win, j, j, (mlx_color){ .rgba = 0x0000FFFF + (color << 24) });
mlx_pixel_put(mlx->mlx, mlx->win, 399 - j, j, (mlx_color){ .rgba = 0x0000FFFF });
mlx_pixel_put(mlx->mlx, mlx->win, win_width - j, j, (mlx_color){ .rgba = 0x0000FFFF });
color += (color < 255);
}
+2 -20
View File
@@ -6,7 +6,7 @@
/* By: maldavid <contact@kbz8.me> +#+ +:+ +#+ */
/* +#+#+#+#+#+ +#+ */
/* Created: 2022/10/04 16:56:35 by maldavid #+# #+# */
/* Updated: 2025/03/12 22:26:32 by maldavid ### ########.fr */
/* Updated: 2025/10/22 16:59:21 by maldavid ### ########.fr */
/* */
/* ************************************************************************** */
@@ -338,7 +338,7 @@ MLX_API mlx_image mlx_new_image(mlx_context mlx, int width, int height);
* @param mlx Internal MLX application
* @param filename Path to the png file
* @param width Get the width of the image
* @param heigth Get the height of the image
* @param height Get the height of the image
*
* @return (mlx_image) An opaque handler to the internal image or MLX_NULL_HANDLE (0x0) in case of error
*/
@@ -361,14 +361,6 @@ MLX_API void mlx_destroy_image(mlx_context mlx, mlx_image image);
* @param y Y coordinate in the image
*
* @return (int) Return the pixel data
*
* /!\ If you run into glitches when writing or reading pixels from images /!\
* You need to add IMAGES_OPTIMIZED=false to your make mlx command
* ```
* ~ git clone https://github.com/seekrs/MacroLibX.git
* ~ cd MacroLibX
* ~ make IMAGES_OPTIMIZED=false
* ```
*/
MLX_API mlx_color mlx_get_image_pixel(mlx_context mlx, mlx_image image, int x, int y);
@@ -380,14 +372,6 @@ MLX_API mlx_color mlx_get_image_pixel(mlx_context mlx, mlx_image image, int x, i
* @param x X coordinate in the image
* @param y Y coordinate in the image
* @param color Color of the pixel to set
*
* /!\ If you run into glitches when writing or reading pixels from images /!\
* You need to add IMAGES_OPTIMIZED=false to your make mlx command
* ```
* ~ git clone https://github.com/seekrs/MacroLibX.git
* ~ cd MacroLibX
* ~ make IMAGES_OPTIMIZED=false
* ```
*/
MLX_API void mlx_set_image_pixel(mlx_context mlx, mlx_image image, int x, int y, mlx_color color);
@@ -423,7 +407,6 @@ MLX_API void mlx_string_put(mlx_context mlx, mlx_window win, int x, int y, mlx_c
* @brief Loads a font to be used by `mlx_string_put`
*
* @param mlx Internal MLX application
* @param win Internal window
* @param filepath Filepath to the font or "default" to reset to the embedded font
*/
MLX_API void mlx_set_font(mlx_context mlx, char* filepath);
@@ -432,7 +415,6 @@ MLX_API void mlx_set_font(mlx_context mlx, char* filepath);
* @brief Loads a font to be used by `mlx_string_put` and scales it
*
* @param mlx Internal MLX application
* @param win Internal window
* @param filepath Filepath to the font or "default" to reset to the embedded font
* @param scale Scale to apply to the font
*/
+1 -17
View File
@@ -6,7 +6,7 @@
/* By: maldavid <contact@kbz8.me> +#+ +:+ +#+ */
/* +#+#+#+#+#+ +#+ */
/* Created: 2024/12/14 16:17:10 by maldavid #+# #+# */
/* Updated: 2025/03/12 22:03:45 by maldavid ### ########.fr */
/* Updated: 2025/10/22 16:59:38 by maldavid ### ########.fr */
/* */
/* ************************************************************************** */
@@ -122,14 +122,6 @@ MLX_API void mlx_pixel_put_region(mlx_context mlx, mlx_window win, int x, int y,
*
* Note: it is responsability of the user to make sure the size of `dst` is
* big enough for the given region.
*
* /!\ If you run into glitches when writing or reading pixels from images /!\
* You need to add IMAGES_OPTIMIZED=false to your make mlx command
* ```
* ~ git clone https://github.com/seekrs/MacroLibX.git
* ~ cd MacroLibX
* ~ make IMAGES_OPTIMIZED=false
* ```
*/
MLX_API void mlx_get_image_region(mlx_context mlx, mlx_image image, int x, int y, int w, int h, mlx_color* dst);
@@ -146,14 +138,6 @@ MLX_API void mlx_get_image_region(mlx_context mlx, mlx_image image, int x, int y
*
* Note: it is responsability of the user to make sure the size of `pixels` is
* big enough for the given region.
*
* /!\ If you run into glitches when writing or reading pixels from images /!\
* You need to add IMAGES_OPTIMIZED=false to your make mlx command
* ```
* ~ git clone https://github.com/seekrs/MacroLibX.git
* ~ cd MacroLibX
* ~ make IMAGES_OPTIMIZED=false
* ```
*/
MLX_API void mlx_set_image_region(mlx_context mlx, mlx_image image, int x, int y, int w, int h, mlx_color* pixels);
+1 -1
View File
@@ -206,7 +206,7 @@
typedef void (*mlx_function)(void);
#define MLX_VERSION MLX_MAKE_VERSION(2, 2, 0)
#define MLX_VERSION MLX_MAKE_VERSION(2, 2, 4)
#define MLX_TARGET_VULKAN_API_VERSION MLX_MAKE_VERSION(1, 0, 0)
// Checking common assumptions
+106
View File
@@ -0,0 +1,106 @@
project('MacroLibX',
['c', 'cpp'],
version : '2.3.0',
license : 'MIT',
meson_version : '>= 0.63.0',
default_options : [
'warning_level=2',
'optimization=3',
'cpp_std=c++20',
]
)
add_project_arguments('-DSDL_MAIN_HANDLED', language : 'c')
if get_option('graphics_memory_dump')
add_project_arguments('-DGRAPHICS_MEMORY_DUMP', language : 'c')
endif
if get_option('profiler')
add_project_arguments('-DPROFILER_ENABLED', language : 'c')
endif
if get_option('force_wayland')
add_project_arguments('-DFORCE_WAYLAND', language : 'c')
endif
if get_option('disable_all_safeties')
add_project_arguments('-DDISABLE_ALL_SAFETIES', language : 'c')
endif
includes_directories = include_directories(
'includes',
'runtime/Includes',
'runtime/Sources',
'third_party',
)
sources = files(
'runtime/Sources/Core/Application.cpp',
'runtime/Sources/Core/Bridge.cpp',
'runtime/Sources/Core/EventBus.cpp',
'runtime/Sources/Core/EventListener.cpp',
'runtime/Sources/Core/Fps.cpp',
'runtime/Sources/Core/Graphics.cpp',
'runtime/Sources/Core/Logs.cpp',
'runtime/Sources/Core/Memory.cpp',
'runtime/Sources/Core/Profiler.cpp',
'runtime/Sources/Core/SDLManager.cpp',
'runtime/Sources/Core/UUID.cpp',
'runtime/Sources/Graphics/Font.cpp',
'runtime/Sources/Graphics/Mesh.cpp',
'runtime/Sources/Graphics/PutPixelManager.cpp',
'runtime/Sources/Graphics/Scene.cpp',
'runtime/Sources/Graphics/Sprite.cpp',
'runtime/Sources/Graphics/Text.cpp',
'runtime/Sources/Platform/Inputs.cpp',
'runtime/Sources/Platform/Window.cpp',
'runtime/Sources/Renderer/Pipelines/Graphics.cpp',
'runtime/Sources/Renderer/Pipelines/Shader.cpp',
'runtime/Sources/Renderer/RenderPasses/2DPass.cpp',
'runtime/Sources/Renderer/RenderPasses/FinalPass.cpp',
'runtime/Sources/Renderer/RenderPasses/Passes.cpp',
'runtime/Sources/Renderer/Vulkan/VulkanLoader.cpp',
'runtime/Sources/Renderer/Buffer.cpp',
'runtime/Sources/Renderer/Descriptor.cpp',
'runtime/Sources/Renderer/Image.cpp',
'runtime/Sources/Renderer/Memory.cpp',
'runtime/Sources/Renderer/RenderCore.cpp',
'runtime/Sources/Renderer/Renderer.cpp',
'runtime/Sources/Renderer/SceneRenderer.cpp',
'runtime/Sources/Renderer/Swapchain.cpp',
)
mlx_headers = [
'includes/mlx.h',
'includes/mlx_extended.h',
'includes/mlx_profile.h'
]
install_headers(mlx_headers)
deps = dependency('sdl2')
libmlx = library('mlx',
sources,
include_directories : includes_directories,
dependencies : deps,
install : true)
libmlx_dep = declare_dependency(
include_directories: includes_directories,
dependencies : deps,
link_with : libmlx)
meson.override_dependency('mlx', libmlx_dep)
# PKG CONFIG GENERATION
pkg_mod = import('pkgconfig')
pkg_mod.generate(
libmlx,
name : 'mlx',
description : 'MacroLibX Library',
version : meson.project_version(),
subdirs : ['.'],
)
+23
View File
@@ -0,0 +1,23 @@
option('graphics_memory_dump',
type : 'boolean',
value : false,
description : 'Enable graphics memory dump for debugging purposes.'
)
option('profiler',
type : 'boolean',
value : false,
description : 'Enable profiler for performance analysis.'
)
option('force_wayland',
type : 'boolean',
value : false,
description : 'Force the application to use Wayland display server.'
)
option('disable_all_safeties',
type : 'boolean',
value : false,
description : 'Disable all safety checks in the application.'
)
-1
View File
@@ -47,7 +47,6 @@ namespace mlx
std::unordered_map<std::string, std::pair<std::size_t, ProfileResult>> m_profile_data;
std::ofstream m_output_stream;
std::mutex m_mutex;
bool m_runtime_session_began = false;
};
-1
View File
@@ -20,7 +20,6 @@ namespace mlx
void SetInputBinding(std::function<void(SDL_Event*)> functor);
VkSurfaceKHR CreateVulkanSurface(Handle window, VkInstance instance) const noexcept;
std::vector<const char*> GetRequiredVulkanInstanceExtentions(Handle window) const noexcept;
Vec2ui GetVulkanDrawableSize(Handle window) const noexcept;
void MoveMouseOnWindow(Handle window, int x, int y) const noexcept;
void GetScreenSizeWindowIsOn(Handle window, int* x, int* y) const noexcept;
+1 -1
View File
@@ -38,7 +38,7 @@ namespace mlx
inline void UpdateDescriptorSet(std::shared_ptr<DescriptorSet> set)
{
p_set = RenderCore::Get().GetDescriptorPoolManager().GetAvailablePool().RequestDescriptorSet(set->GetShaderLayout(), set->GetShaderType());
p_set = RenderCore::Get().GetDescriptorPoolManager().GetAvailablePool(set->GetShaderLayout(), set->GetShaderType()).RequestDescriptorSet(set->GetShaderLayout(), set->GetShaderType());
}
virtual void Bind(std::size_t frame_index, VkCommandBuffer cmd) = 0;
+2 -1
View File
@@ -8,7 +8,7 @@ namespace mlx
class PutPixelManager
{
public:
PutPixelManager(NonOwningPtr<class Renderer> renderer) : p_renderer(renderer) {}
PutPixelManager(NonOwningPtr<class Renderer> renderer);
// Returns a valid pointer when a new texture has been created
NonOwningPtr<Texture> DrawPixel(int x, int y, std::uint64_t draw_layer, mlx_color color);
@@ -20,6 +20,7 @@ namespace mlx
private:
NonOwningPtr<Texture> GetLayer(std::uint64_t draw_layer, bool& is_newlayer);
std::unique_ptr<Texture> NewTexture();
private:
std::unordered_map<std::uint64_t, NonOwningPtr<Texture>> m_placements;
-1
View File
@@ -35,7 +35,6 @@ namespace mlx
MLX_FORCEINLINE void GetSize(int* x, int* y) { *x = GetWidth(); *y = GetHeight(); }
MLX_FORCEINLINE VkSurfaceKHR CreateVulkanSurface(VkInstance instance) const noexcept { return SDLManager::Get().CreateVulkanSurface(p_window, instance); }
MLX_FORCEINLINE std::vector<const char*> GetRequiredVulkanInstanceExtentions() const noexcept { return SDLManager::Get().GetRequiredVulkanInstanceExtentions(p_window); }
MLX_FORCEINLINE Vec2ui GetVulkanDrawableSize() const noexcept { return SDLManager::Get().GetVulkanDrawableSize(p_window); }
[[nodiscard]] inline Handle GetRawHandle() const noexcept { return p_window; }
+15 -2
View File
@@ -17,8 +17,21 @@
#include <vulkan/vulkan.h>
#include <SDL2/SDL.h>
#include <SDL2/SDL_vulkan.h>
#if __has_include(<SDL2/SDL.h>)
#include <SDL2/SDL.h>
#elif __has_include(<SDL.h>)
#include <SDL.h>
#else
#error Failed to find SDL2 headers
#endif
#if __has_include(<SDL2/SDL_syswm.h>)
#include <SDL2/SDL_syswm.h>
#elif __has_include(<SDL_syswm.h>)
#include <SDL_syswm.h>
#else
#error Failed to find SDL2 SysWMinfo
#endif
#include <functional>
#include <memory>
+2 -3
View File
@@ -26,9 +26,9 @@ namespace mlx
std::shared_ptr<class DescriptorSet> RequestDescriptorSet(const ShaderSetLayout& layout, ShaderType shader_type);
void ReturnDescriptorSet(std::shared_ptr<class DescriptorSet> set);
bool CanAllocate(const ShaderSetLayout& layout, ShaderType shader_type) const;
[[nodiscard]] inline VkDescriptorPool Get() const noexcept { return m_pool; }
[[nodiscard]] MLX_FORCEINLINE std::size_t GetNumberOfSetsAllocated() const noexcept { return m_allocation_count; }
~DescriptorPool() = default;
@@ -36,7 +36,6 @@ namespace mlx
std::vector<std::shared_ptr<class DescriptorSet>> m_free_sets;
std::vector<std::shared_ptr<class DescriptorSet>> m_used_sets;
VkDescriptorPool m_pool;
std::size_t m_allocation_count = 0;
};
class DescriptorPoolManager
@@ -44,7 +43,7 @@ namespace mlx
public:
DescriptorPoolManager() = default;
DescriptorPool& GetAvailablePool();
DescriptorPool& GetAvailablePool(const ShaderSetLayout& layout, ShaderType shader_type);
void Destroy();
~DescriptorPoolManager() = default;
+6
View File
@@ -89,7 +89,13 @@ namespace mlx
mlx_color GetPixel(int x, int y) noexcept;
void GetRegion(int x, int y, int w, int h, mlx_color* dst) noexcept;
void Clear(VkCommandBuffer cmd, Vec4f color) override;
void CopyTo(Texture& other);
void Resize(std::uint32_t width, std::uint32_t height);
void Swap(Texture& texture) noexcept;
// If a valid cmd buffer is passed, this function takes ownership and makes it invalid after
void SyncCPUBuffer(VkCommandBuffer cmd = VK_NULL_HANDLE);
void Update(VkCommandBuffer cmd);
~Texture() override { Destroy(); }
@@ -123,5 +123,41 @@
MLX_VULKAN_INSTANCE_FUNCTION(vkGetPhysicalDeviceSurfaceFormatsKHR)
MLX_VULKAN_INSTANCE_FUNCTION(vkGetPhysicalDeviceSurfacePresentModesKHR)
MLX_VULKAN_INSTANCE_FUNCTION(vkGetPhysicalDeviceSurfaceSupportKHR)
#ifdef VK_USE_PLATFORM_ANDROID_KHR
#ifdef VK_KHR_android_surface
MLX_VULKAN_INSTANCE_FUNCTION(vkCreateAndroidSurfaceKHR)
#endif
#endif
#ifdef VK_USE_PLATFORM_XCB_KHR
#ifdef VK_KHR_xcb_surface
MLX_VULKAN_INSTANCE_FUNCTION(vkCreateXcbSurfaceKHR)
#endif
#endif
#ifdef VK_USE_PLATFORM_XLIB_KHR
#ifdef VK_KHR_xlib_surface
MLX_VULKAN_INSTANCE_FUNCTION(vkCreateXlibSurfaceKHR)
#endif
#endif
#ifdef VK_USE_PLATFORM_WAYLAND_KHR
#ifdef VK_KHR_wayland_surface
MLX_VULKAN_INSTANCE_FUNCTION(vkCreateWaylandSurfaceKHR)
#endif
#endif
#ifdef VK_USE_PLATFORM_WIN32_KHR
#ifdef VK_KHR_win32_surface
MLX_VULKAN_INSTANCE_FUNCTION(vkCreateWin32SurfaceKHR)
#endif
#endif
#ifdef VK_USE_PLATFORM_METAL_EXT
#ifdef VK_EXT_metal_surface
MLX_VULKAN_INSTANCE_FUNCTION(vkCreateMetalSurfaceEXT)
#endif
#endif
#endif
#endif
+50 -7
View File
@@ -238,6 +238,15 @@ extern "C"
mlx::Error("Image loader: not a valid file format '%'", filename);
return nullptr;
}
{
std::ifstream stream(file, std::ios::binary);
if(!stream.is_open())
{
mlx::Error("Image loader: failed to open file '%'", filename);
return nullptr;
}
}
return mlx->app->NewStbTexture(filename, width, height);
}
@@ -304,12 +313,29 @@ extern "C"
mlx::Error("Font loader: filepath is NULL");
return;
}
std::filesystem::path file(filepath);
if(std::strcmp(filepath, "default") != 0 && file.extension() != ".ttf" && file.extension() != ".tte")
if (std::strcmp(filepath, "default") != 0 && !std::filesystem::exists(file))
{
mlx::Error("TTF loader: not a truetype font file '%'", filepath);
mlx::Error("TTF loader: unable to find file '%'", filepath);
return;
}
if(std::strcmp(filepath, "default") != 0)
{
if(file.extension() != ".ttf" && file.extension() != ".tte")
{
mlx::Error("TTF loader: not a truetype font file '%'", filepath);
return;
}
std::ifstream stream(file, std::ios::binary);
if(!stream.is_open())
{
mlx::Error("TTF loader: failed to open font file '%'", filepath);
return;
}
}
if(std::strcmp(filepath, "default") == 0)
mlx->app->LoadFont(file, 6.f);
else
@@ -324,12 +350,29 @@ extern "C"
mlx::Error("Font loader: filepath is NULL");
return;
}
std::filesystem::path file(filepath);
if(std::strcmp(filepath, "default") != 0 && file.extension() != ".ttf" && file.extension() != ".tte")
if (std::strcmp(filepath, "default") != 0 && !std::filesystem::exists(file))
{
mlx::Error("TTF loader: not a truetype font file '%'", filepath);
mlx::Error("TTF loader: unable to find file '%'", filepath);
return;
}
if(std::strcmp(filepath, "default") != 0)
{
if(file.extension() != ".ttf" && file.extension() != ".tte")
{
mlx::Error("TTF loader: not a truetype font file '%'", filepath);
return;
}
std::ifstream stream(file, std::ios::binary);
if(!stream.is_open())
{
mlx::Error("TTF loader: failed to open font file '%'", filepath);
return;
}
}
mlx->app->LoadFont(file, scale);
}
@@ -479,7 +522,7 @@ extern "C"
MLX_CHECK_APPLICATION_POINTER(mlx);
mlx::NonOwningPtr<mlx::GraphicsSupport> gs = mlx->app->GetGraphicsSupport(win);
if(!gs)
return nullptr;
return VK_NULL_HANDLE;
return gs->GetRenderer().GetSwapchain().GetSurface();
}
@@ -488,7 +531,7 @@ extern "C"
MLX_CHECK_APPLICATION_POINTER(mlx);
mlx::NonOwningPtr<mlx::GraphicsSupport> gs = mlx->app->GetGraphicsSupport(win);
if(!gs || index > gs->GetRenderer().GetSwapchain().GetImagesCount())
return nullptr;
return VK_NULL_HANDLE;
return gs->GetRenderer().GetSwapchain().GetSwapchainImages()[index].Get();
}
@@ -506,7 +549,7 @@ extern "C"
MLX_CHECK_APPLICATION_POINTER(mlx);
mlx::NonOwningPtr<mlx::GraphicsSupport> gs = mlx->app->GetGraphicsSupport(win);
if(!gs || index > gs->GetRenderer().GetSwapchain().GetImagesCount())
return nullptr;
return VK_NULL_HANDLE;
return gs->GetRenderer().GetSwapchain().GetSwapchainImages()[index].GetImageView();
}
+4 -4
View File
@@ -21,7 +21,7 @@ namespace mlx
void* MemManager::AlignedMalloc(std::size_t alignment, std::size_t size)
{
#ifdef MLX_COMPILER_MSVC
#ifdef MLX_PLAT_WINDOWS
void* ptr = _aligned_malloc(size, alignment);
#else
if(alignment < sizeof(void*))
@@ -66,7 +66,7 @@ namespace mlx
{
auto it = std::find_if(s_blocks.begin(), s_blocks.end(), [=](const Descriptor& rhs){ return ptr == rhs.ptr; });
#ifdef MLX_COMPILER_MSVC
#ifdef MLX_PLAT_WINDOWS
void* ptr2 = _aligned_realloc(ptr, size, alignment);
if(it != s_blocks.end())
s_blocks.erase(it);
@@ -90,7 +90,7 @@ namespace mlx
auto it = std::find_if(s_blocks.begin(), s_blocks.end(), [=](const Descriptor& rhs){ return ptr == rhs.ptr; });
if(it == s_blocks.end())
return;
#ifdef MLX_COMPILER_MSVC
#ifdef MLX_PLAT_WINDOWS
if(it->aligned)
_aligned_free(it->ptr);
else
@@ -105,7 +105,7 @@ namespace mlx
{
for(const Descriptor& desc : s_blocks)
{
#ifdef MLX_COMPILER_MSVC
#ifdef MLX_PLAT_WINDOWS
if(desc.aligned)
_aligned_free(desc.ptr);
else
-3
View File
@@ -8,7 +8,6 @@ namespace mlx
void Profiler::BeginRuntimeSession()
{
std::lock_guard lock(m_mutex);
if(m_runtime_session_began)
return;
m_output_stream.open("./runtime_profile.mlx.json", std::ofstream::out | std::ofstream::trunc);
@@ -22,7 +21,6 @@ namespace mlx
void Profiler::AppendProfileData(ProfileResult&& result)
{
std::lock_guard lock(m_mutex);
auto it = m_profile_data.find(result.name);
if(it != m_profile_data.end())
{
@@ -49,7 +47,6 @@ namespace mlx
void Profiler::EndRuntimeSession()
{
std::lock_guard lock(m_mutex);
if(!m_runtime_session_began)
return;
for(auto& [_, pair] : m_profile_data)
+30 -18
View File
@@ -25,7 +25,7 @@ namespace mlx
m_drop_sdl_responsability = SDL_WasInit(SDL_INIT_VIDEO) || std::getenv("MLX_HEADLESS_MODE") != nullptr;
if(m_drop_sdl_responsability) // is case the mlx is running in a sandbox like MacroUnitTester where SDL is already init
return;
SDL_SetMemoryFunctions(MemManager::Get().Malloc, MemManager::Get().Calloc, MemManager::Get().Realloc, MemManager::Get().Free);
//SDL_SetMemoryFunctions(MemManager::Get().Malloc, MemManager::Get().Calloc, MemManager::Get().Realloc, MemManager::Get().Free);
#ifdef FORCE_WAYLAND
SDL_SetHint(SDL_HINT_VIDEODRIVER, "wayland,x11");
@@ -43,7 +43,7 @@ namespace mlx
Internal::WindowInfos* infos = new Internal::WindowInfos;
Verify(infos != nullptr, "SDL: window allocation failed");
std::uint32_t flags = SDL_WINDOW_VULKAN;
std::uint32_t flags = 0;
if(hidden)
flags |= SDL_WINDOW_HIDDEN;
else
@@ -88,28 +88,38 @@ namespace mlx
VkSurfaceKHR SDLManager::CreateVulkanSurface(Handle window, VkInstance instance) const noexcept
{
VkSurfaceKHR surface;
if(!SDL_Vulkan_CreateSurface(static_cast<Internal::WindowInfos*>(window)->window, instance, &surface))
FatalError("SDL: could not create a Vulkan surface; %", SDL_GetError());
return surface;
}
SDL_SysWMinfo info;
SDL_VERSION(&info.version);
if(SDL_GetWindowWMInfo(static_cast<Internal::WindowInfos*>(window)->window, &info) != SDL_TRUE)
FatalError("SDL Manager: cannot retrieve window informations");
std::vector<const char*> SDLManager::GetRequiredVulkanInstanceExtentions(Handle window) const noexcept
{
std::uint32_t count;
if(!SDL_Vulkan_GetInstanceExtensions(static_cast<Internal::WindowInfos*>(window)->window, &count, nullptr))
FatalError("SDL Manager: could not retrieve Vulkan instance extensions");
std::vector<const char*> extensions(count);
if(!SDL_Vulkan_GetInstanceExtensions(static_cast<Internal::WindowInfos*>(window)->window, &count, extensions.data()))
FatalError("SDL Manager: could not retrieve Vulkan instance extensions");
extensions.push_back(VK_KHR_SURFACE_EXTENSION_NAME);
return extensions;
switch(info.subsystem)
{
#ifdef SDL_VIDEO_DRIVER_WINDOWS
case SDL_SYSWM_WINDOWS: return kvfCreateSurfaceKHR(instance, KVF_SURFACE_WINDOWS, static_cast<void*>(info.info.win.hinstance), static_cast<void*>(info.info.win.window));
#endif
#ifdef SDL_VIDEO_DRIVER_X11
case SDL_SYSWM_X11: return kvfCreateSurfaceKHR(instance, KVF_SURFACE_XLIB, static_cast<void*>(info.info.x11.display), static_cast<void*>(&info.info.x11.window));
#endif
#ifdef SDL_VIDEO_DRIVER_COCOA
case SDL_SYSWM_COCOA: FatalError("SDL Manager: Vulkan surfaces over Metal are not supported yet. Please fill an issue here https://github.com/seekrs/MacroLibX/issues/new");
#endif
#ifdef SDL_VIDEO_DRIVER_WAYLAND
case SDL_SYSWM_WAYLAND: return kvfCreateSurfaceKHR(instance, KVF_SURFACE_WAYLAND, static_cast<void*>(info.info.wl.display), static_cast<void*>(info.info.wl.surface));
#endif
#ifdef SDL_VIDEO_DRIVER_ANDROID
case SDL_SYSWM_ANDROID: return kvfCreateSurfaceKHR(instance, KVF_SURFACE_ANDROID, nullptr, static_cast<void*>(info.info.android.window));
#endif
default : FatalError("SDL Manager: unsupported windowing system"); break;
}
return VK_NULL_HANDLE;
}
Vec2ui SDLManager::GetVulkanDrawableSize(Handle window) const noexcept
{
Vec2i extent;
SDL_Vulkan_GetDrawableSize(static_cast<Internal::WindowInfos*>(window)->window, &extent.x, &extent.y);
SDL_GetWindowSize(static_cast<Internal::WindowInfos*>(window)->window, &extent.x, &extent.y);
return Vec2ui{ extent };
}
@@ -266,6 +276,7 @@ namespace mlx
case SDL_WINDOWEVENT_LEAVE: functor(MLX_WINDOW_EVENT, id, 6); break;
case SDL_WINDOWEVENT_FOCUS_LOST: functor(MLX_WINDOW_EVENT, id, 7); break;
case SDL_WINDOWEVENT_SIZE_CHANGED: functor(MLX_WINDOW_EVENT, id, 8); break;
case SDL_WINDOWEVENT_RESTORED: functor(MLX_WINDOW_EVENT, id, 11); break;
default : break;
}
@@ -284,6 +295,7 @@ namespace mlx
{
if(m_drop_sdl_responsability)
return;
SDL_QuitSubSystem(SDL_INIT_VIDEO | SDL_INIT_TIMER | SDL_INIT_EVENTS);
SDL_Quit();
s_instance = nullptr;
+41 -14
View File
@@ -6,6 +6,29 @@
namespace mlx
{
PutPixelManager::PutPixelManager(NonOwningPtr<class Renderer> renderer) : p_renderer(renderer)
{
MLX_PROFILE_FUNCTION();
std::function<void(const EventBase&)> functor = [this](const EventBase& event)
{
// Suboptimal for multi-windows applications
if(event.What() == Event::ResizeEventCode)
{
VkExtent2D extent{ .width = 0, .height = 0 };
if(p_renderer->GetWindow())
extent = kvfGetSwapchainImagesSize(p_renderer->GetSwapchain().Get());
else if(p_renderer->GetRenderTarget())
extent = VkExtent2D{ .width = p_renderer->GetRenderTarget()->GetWidth(), .height = p_renderer->GetRenderTarget()->GetHeight() };
else
FatalError("a renderer was created without window nor render target attached (wtf!?)");
for(auto& texture : m_textures)
texture->Resize(extent.width, extent.height);
}
};
EventBus::RegisterListener({ functor, "mlx_put_pixel_manager_" + std::to_string(reinterpret_cast<std::uintptr_t>(this)) });
}
NonOwningPtr<Texture> PutPixelManager::DrawPixel(int x, int y, std::uint64_t draw_layer, mlx_color color)
{
MLX_PROFILE_FUNCTION();
@@ -53,21 +76,8 @@ namespace mlx
is_newlayer = true;
if(m_current_texture_index >= m_textures.size())
{
VkExtent2D extent{ .width = 0, .height = 0 };
if(p_renderer->GetWindow())
extent = kvfGetSwapchainImagesSize(p_renderer->GetSwapchain().Get());
else if(p_renderer->GetRenderTarget())
extent = VkExtent2D{ .width = p_renderer->GetRenderTarget()->GetWidth(), .height = p_renderer->GetRenderTarget()->GetHeight() };
else
FatalError("a renderer was created without window nor render target attached (wtf)");
m_textures.push_back(NewTexture());
#ifdef DEBUG
m_textures.push_back(std::make_unique<Texture>(CPUBuffer{}, extent.width, extent.height, VK_FORMAT_R8G8B8A8_SRGB, false, "mlx_put_pixel_layer_" + std::to_string(m_current_texture_index)));
#else
m_textures.push_back(std::make_unique<Texture>(CPUBuffer{}, extent.width, extent.height, VK_FORMAT_R8G8B8A8_SRGB, false, std::string_view{}));
#endif
}
try
{
m_placements[draw_layer] = m_textures.at(m_current_texture_index).get();
@@ -83,6 +93,23 @@ namespace mlx
}
}
std::unique_ptr<Texture> PutPixelManager::NewTexture()
{
VkExtent2D extent{ .width = 0, .height = 0 };
if(p_renderer->GetWindow())
extent = kvfGetSwapchainImagesSize(p_renderer->GetSwapchain().Get());
else if(p_renderer->GetRenderTarget())
extent = VkExtent2D{ .width = p_renderer->GetRenderTarget()->GetWidth(), .height = p_renderer->GetRenderTarget()->GetHeight() };
else
FatalError("a renderer was created without window nor render target attached (wtf!?)");
#ifdef DEBUG
return std::make_unique<Texture>(CPUBuffer{}, extent.width, extent.height, VK_FORMAT_R8G8B8A8_SRGB, false, "mlx_put_pixel_layer_" + std::to_string(m_current_texture_index));
#else
return std::make_unique<Texture>(CPUBuffer{}, extent.width, extent.height, VK_FORMAT_R8G8B8A8_SRGB, false, std::string_view{});
#endif
}
void PutPixelManager::ResetRenderData()
{
m_placements.clear();
+19 -10
View File
@@ -9,7 +9,7 @@
namespace mlx
{
constexpr std::size_t MAX_SETS_PER_POOL = MAX_FRAMES_IN_FLIGHT * 1024;
constexpr std::size_t MAX_SETS_PER_POOL = 1024;
void TransitionImageToCorrectLayout(Image& image, VkCommandBuffer cmd)
{
@@ -26,19 +26,19 @@ namespace mlx
{
MLX_PROFILE_FUNCTION();
VkDescriptorPoolSize pool_sizes[] = {
{ VK_DESCRIPTOR_TYPE_COMBINED_IMAGE_SAMPLER, MAX_SETS_PER_POOL },
{ VK_DESCRIPTOR_TYPE_UNIFORM_BUFFER, MAX_SETS_PER_POOL },
{ VK_DESCRIPTOR_TYPE_STORAGE_BUFFER, MAX_SETS_PER_POOL }
{ VK_DESCRIPTOR_TYPE_COMBINED_IMAGE_SAMPLER, MAX_FRAMES_IN_FLIGHT * MAX_SETS_PER_POOL },
{ VK_DESCRIPTOR_TYPE_UNIFORM_BUFFER, MAX_FRAMES_IN_FLIGHT * MAX_SETS_PER_POOL },
{ VK_DESCRIPTOR_TYPE_STORAGE_BUFFER, MAX_FRAMES_IN_FLIGHT * MAX_SETS_PER_POOL }
};
VkDescriptorPoolCreateInfo pool_info{};
pool_info.sType = VK_STRUCTURE_TYPE_DESCRIPTOR_POOL_CREATE_INFO;
pool_info.poolSizeCount = sizeof(pool_sizes) / sizeof(pool_sizes[0]);
pool_info.pPoolSizes = pool_sizes;
pool_info.maxSets = MAX_SETS_PER_POOL;
pool_info.maxSets = MAX_FRAMES_IN_FLIGHT * MAX_SETS_PER_POOL;
pool_info.flags = 0;
kvfCheckVk(RenderCore::Get().vkCreateDescriptorPool(RenderCore::Get().GetDevice(), &pool_info, nullptr, &m_pool));
m_allocation_count = 0;
DebugLog("Vulkan: created new descriptor pool");
}
void DescriptorPool::Destroy() noexcept
@@ -52,7 +52,6 @@ namespace mlx
kvfDestroyDescriptorSetLayout(RenderCore::Get().GetDevice(), set->m_set_layout);
RenderCore::Get().vkDestroyDescriptorPool(RenderCore::Get().GetDevice(), m_pool, nullptr);
m_pool = VK_NULL_HANDLE;
m_allocation_count = 0;
m_free_sets.clear();
m_used_sets.clear();
}
@@ -103,7 +102,6 @@ namespace mlx
alloc_info.pSetLayouts = &vulkan_layout;
VkDescriptorSet vulkan_set;
kvfCheckVk(RenderCore::Get().vkAllocateDescriptorSets(RenderCore::Get().GetDevice(), &alloc_info, &vulkan_set));
m_allocation_count++;
vulkan_sets[i] = vulkan_set;
}
@@ -124,12 +122,23 @@ namespace mlx
m_free_sets.push_back(set);
}
DescriptorPool& DescriptorPoolManager::GetAvailablePool()
bool DescriptorPool::CanAllocate(const ShaderSetLayout& layout, ShaderType shader_type) const
{
auto it = std::find_if(m_free_sets.begin(), m_free_sets.end(), [&](std::shared_ptr<DescriptorSet> set)
{
return shader_type == set->GetShaderType() && layout == set->GetShaderLayout();
});
if(it != m_free_sets.end())
return true;
return m_used_sets.size() + m_free_sets.size() < MAX_SETS_PER_POOL;
}
DescriptorPool& DescriptorPoolManager::GetAvailablePool(const ShaderSetLayout& layout, ShaderType shader_type)
{
MLX_PROFILE_FUNCTION();
for(auto& pool : m_pools)
{
if(pool->GetNumberOfSetsAllocated() < MAX_SETS_PER_POOL)
if(pool->CanAllocate(layout, shader_type))
return *pool;
}
m_pools.emplace_back(std::make_unique<DescriptorPool>())->Init();
+110 -9
View File
@@ -22,15 +22,9 @@
#include <stb_image.h>
#endif
#ifdef IMAGE_OPTIMIZED
#define TILING VK_IMAGE_TILING_OPTIMAL
#else
#define TILING VK_IMAGE_TILING_LINEAR
#endif
namespace mlx
{
mlx_color ReverseColor(mlx_color color)
MLX_FORCEINLINE mlx_color ReverseColor(mlx_color color)
{
mlx_color reversed_color;
reversed_color.r = color.a;
@@ -186,7 +180,7 @@ namespace mlx
void Texture::Init(CPUBuffer pixels, std::uint32_t width, std::uint32_t height, VkFormat format, bool is_multisampled, [[maybe_unused]] std::string_view debug_name)
{
MLX_PROFILE_FUNCTION();
Image::Init(ImageType::Color, width, height, format, TILING, VK_IMAGE_USAGE_TRANSFER_DST_BIT | VK_IMAGE_USAGE_TRANSFER_SRC_BIT | VK_IMAGE_USAGE_SAMPLED_BIT | VK_IMAGE_USAGE_COLOR_ATTACHMENT_BIT, is_multisampled, std::move(debug_name));
Image::Init(ImageType::Color, width, height, format, VK_IMAGE_TILING_OPTIMAL, VK_IMAGE_USAGE_TRANSFER_DST_BIT | VK_IMAGE_USAGE_TRANSFER_SRC_BIT | VK_IMAGE_USAGE_SAMPLED_BIT | VK_IMAGE_USAGE_COLOR_ATTACHMENT_BIT, is_multisampled, std::move(debug_name));
Image::CreateImageView(VK_IMAGE_VIEW_TYPE_2D, VK_IMAGE_ASPECT_COLOR_BIT);
Image::CreateSampler();
if(pixels)
@@ -368,8 +362,16 @@ namespace mlx
m_staging_buffer->Init(BufferType::Staging, size, VK_BUFFER_USAGE_TRANSFER_SRC_BIT | VK_BUFFER_USAGE_TRANSFER_DST_BIT, {}, {});
#endif
SyncCPUBuffer();
}
void Texture::SyncCPUBuffer(VkCommandBuffer cmd)
{
if(!m_staging_buffer.has_value())
return;
VkImageLayout old_layout = m_layout;
VkCommandBuffer cmd = kvfCreateCommandBuffer(RenderCore::Get().GetDevice());
if(cmd == VK_NULL_HANDLE)
cmd = kvfCreateCommandBuffer(RenderCore::Get().GetDevice());
kvfBeginCommandBuffer(cmd, VK_COMMAND_BUFFER_USAGE_ONE_TIME_SUBMIT_BIT);
TransitionLayout(VK_IMAGE_LAYOUT_TRANSFER_SRC_OPTIMAL, cmd);
kvfCopyImageToBuffer(cmd, m_staging_buffer->Get(), m_image, m_staging_buffer->GetOffset(), VK_IMAGE_ASPECT_COLOR_BIT, { m_width, m_height, 1 });
@@ -381,6 +383,105 @@ namespace mlx
kvfDestroyCommandBuffer(RenderCore::Get().GetDevice(), cmd);
}
void Texture::CopyTo(Texture& other)
{
VkImageLayout old_layout = m_layout;
VkImageLayout other_old_layout = other.GetLayout();
VkImageSubresourceLayers subresource{};
subresource.aspectMask = VK_IMAGE_ASPECT_COLOR_BIT;
subresource.mipLevel = 0;
subresource.layerCount = 1;
subresource.baseArrayLayer = 0;
VkExtent3D extent{};
extent.width = m_width;
extent.height = m_height;
extent.depth = 1;
VkOffset3D offset{};
offset.x = 0;
offset.y = 0;
offset.z = 0;
VkImageCopy region{};
region.srcSubresource = subresource;
region.dstSubresource = subresource;
region.extent = extent;
region.srcOffset = offset;
region.dstOffset = offset;
VkCommandBuffer cmd = kvfCreateCommandBuffer(RenderCore::Get().GetDevice());
kvfBeginCommandBuffer(cmd, VK_COMMAND_BUFFER_USAGE_ONE_TIME_SUBMIT_BIT);
TransitionLayout(VK_IMAGE_LAYOUT_TRANSFER_SRC_OPTIMAL, cmd);
other.TransitionLayout(VK_IMAGE_LAYOUT_TRANSFER_DST_OPTIMAL, cmd);
kvfCopyImageToImage(cmd, m_image, m_layout, other.Get(), other.GetLayout(), 1, &region);
TransitionLayout(old_layout, cmd);
other.TransitionLayout(other_old_layout, cmd);
kvfEndCommandBuffer(cmd);
SyncCPUBuffer(cmd);
}
void Texture::Resize(std::uint32_t width, std::uint32_t height)
{
#ifdef DEBUG
Texture new_texture = Texture(CPUBuffer{}, width, height, m_format, m_is_multisampled, m_debug_name);
#else
Texture new_texture = Texture(CPUBuffer{}, width, height, m_format, m_is_multisampled, std::string_view{});
#endif
if(m_staging_buffer.has_value())
{
new_texture.OpenCPUBuffer();
new_texture.m_staging_buffer->CopyFrom(*m_staging_buffer);
}
// Suboptimal operations, should bake all of them in a single command buffer
new_texture.Clear(VK_NULL_HANDLE, Vec4f{ 0.f });
CopyTo(new_texture);
Swap(new_texture);
#ifdef DEBUG
DebugLog("Texture: resized '%'", m_debug_name);
#endif
}
void Texture::Swap(Texture& texture) noexcept
{
MLX_PROFILE_FUNCTION();
#ifdef DEBUG
std::swap(m_debug_name, texture.m_debug_name);
#endif
std::swap(m_allocation, texture.m_allocation);
std::swap(m_image, texture.m_image);
std::swap(m_image_view, texture.m_image_view);
std::swap(m_sampler, texture.m_sampler);
std::swap(m_format, texture.m_format);
std::swap(m_tiling, texture.m_tiling);
std::swap(m_layout, texture.m_layout);
std::swap(m_type, texture.m_type);
std::swap(m_width, texture.m_width);
std::swap(m_height, texture.m_height);
std::swap(m_is_multisampled, texture.m_is_multisampled);
if(m_staging_buffer.has_value() && texture.m_staging_buffer.has_value())
m_staging_buffer->Swap(*texture.m_staging_buffer);
else if(m_staging_buffer.has_value())
m_staging_buffer.reset();
else if(texture.m_staging_buffer.has_value())
texture.m_staging_buffer.reset();
m_has_been_modified = true;
texture.m_has_been_modified = true;
}
Texture* StbTextureLoad(const std::filesystem::path& file, int* w, int* h)
{
using namespace std::literals;
@@ -127,6 +127,9 @@ namespace mlx
void GraphicPipeline::Destroy() noexcept
{
MLX_PROFILE_FUNCTION();
if(m_pipeline == VK_NULL_HANDLE)
return;
p_vertex_shader.reset();
p_fragment_shader.reset();
for(auto fb : m_framebuffers)
+57 -5
View File
@@ -55,17 +55,17 @@ namespace mlx
std::cout << std::endl;
}
void* VulkanAllocationFunction(void*, std::size_t size, std::size_t alignment, VkSystemAllocationScope)
void* VKAPI_PTR VulkanAllocationFunction(void*, std::size_t size, std::size_t alignment, VkSystemAllocationScope)
{
return MemManager::AlignedMalloc(alignment, size);
}
void* VulkanReallocationFunction(void*, void* ptr, std::size_t size, std::size_t alignment, VkSystemAllocationScope)
void* VKAPI_PTR VulkanReallocationFunction(void*, void* ptr, std::size_t size, std::size_t alignment, VkSystemAllocationScope)
{
return MemManager::AlignedRealloc(ptr, alignment, size);
}
void VulkanFreeFunction(void*, void* ptr)
void VKAPI_PTR VulkanFreeFunction(void*, void* ptr)
{
MemManager::Free(ptr);
}
@@ -100,8 +100,25 @@ namespace mlx
info.width = 1;
info.height = 1;
window = std::make_unique<Window>(&info, true);
instance_extensions = window->GetRequiredVulkanInstanceExtentions();
#ifdef MLX_PLAT_MACOS
instance_extensions.push_back(VK_KHR_SURFACE_EXTENSION_NAME);
#ifdef VK_USE_PLATFORM_XCB_KHR
instance_extensions.push_back(VK_KHR_XCB_SURFACE_EXTENSION_NAME);
#endif
#ifdef VK_USE_PLATFORM_XLIB_KHR
instance_extensions.push_back(VK_KHR_XLIB_SURFACE_EXTENSION_NAME);
#endif
#ifdef VK_USE_PLATFORM_WAYLAND_KHR
instance_extensions.push_back(VK_KHR_WAYLAND_SURFACE_EXTENSION_NAME);
#endif
#ifdef VK_USE_PLATFORM_WIN32_KHR
instance_extensions.push_back(VK_KHR_WIN32_SURFACE_EXTENSION_NAME);
#endif
#ifdef VK_USE_PLATFORM_METAL_EXT
instance_extensions.push_back(VK_EXT_METAL_SURFACE_EXTENSION_NAME);
instance_extensions.push_back(VK_KHR_PORTABILITY_ENUMERATION_EXTENSION_NAME);
#endif
}
@@ -185,6 +202,41 @@ namespace mlx
MLX_LOAD_FUNCTION(vkGetPhysicalDeviceSurfaceFormatsKHR);
MLX_LOAD_FUNCTION(vkGetPhysicalDeviceSurfacePresentModesKHR);
MLX_LOAD_FUNCTION(vkGetPhysicalDeviceSurfaceSupportKHR);
#ifdef VK_USE_PLATFORM_ANDROID_KHR
#ifdef VK_KHR_android_surface
MLX_LOAD_FUNCTION(vkCreateAndroidSurfaceKHR);
#endif
#endif
#ifdef VK_USE_PLATFORM_XCB_KHR
#ifdef VK_KHR_xcb_surface
MLX_LOAD_FUNCTION(vkCreateXcbSurfaceKHR);
#endif
#endif
#ifdef VK_USE_PLATFORM_XLIB_KHR
#ifdef VK_KHR_xlib_surface
MLX_LOAD_FUNCTION(vkCreateXlibSurfaceKHR);
#endif
#endif
#ifdef VK_USE_PLATFORM_WAYLAND_KHR
#ifdef VK_KHR_wayland_surface
MLX_LOAD_FUNCTION(vkCreateWaylandSurfaceKHR);
#endif
#endif
#ifdef VK_USE_PLATFORM_WIN32_KHR
#ifdef VK_KHR_win32_surface
MLX_LOAD_FUNCTION(vkCreateWin32SurfaceKHR);
#endif
#endif
#ifdef VK_USE_PLATFORM_METAL_EXT
#ifdef VK_EXT_metal_surface
MLX_LOAD_FUNCTION(vkCreateMetalSurfaceEXT);
#endif
#endif
kvfPassInstanceVulkanFunctionPointers(&pfns);
}
@@ -52,8 +52,8 @@ namespace mlx
};
EventBus::RegisterListener({ functor, "mlx_2d_render_pass_" + std::to_string(reinterpret_cast<std::uintptr_t>(this)) });
p_viewer_data_set = RenderCore::Get().GetDescriptorPoolManager().GetAvailablePool().RequestDescriptorSet(p_vertex_shader->GetShaderLayout().set_layouts[0].second, ShaderType::Vertex);
p_texture_set = RenderCore::Get().GetDescriptorPoolManager().GetAvailablePool().RequestDescriptorSet(p_fragment_shader->GetShaderLayout().set_layouts[0].second, ShaderType::Fragment);
p_viewer_data_set = RenderCore::Get().GetDescriptorPoolManager().GetAvailablePool(p_vertex_shader->GetShaderLayout().set_layouts[0].second, ShaderType::Vertex).RequestDescriptorSet(p_vertex_shader->GetShaderLayout().set_layouts[0].second, ShaderType::Vertex);
p_texture_set = RenderCore::Get().GetDescriptorPoolManager().GetAvailablePool(p_fragment_shader->GetShaderLayout().set_layouts[0].second, ShaderType::Fragment).RequestDescriptorSet(p_fragment_shader->GetShaderLayout().set_layouts[0].second, ShaderType::Fragment);
p_viewer_data_buffer = std::make_shared<UniformBuffer>();
p_viewer_data_buffer->Init(sizeof(ViewerData), "mlx_2d_pass_viewer_data");
@@ -38,7 +38,7 @@ namespace mlx
};
EventBus::RegisterListener({ functor, "mlx_final_pass_" + std::to_string(reinterpret_cast<std::uintptr_t>(this)) });
p_set = RenderCore::Get().GetDescriptorPoolManager().GetAvailablePool().RequestDescriptorSet(p_fragment_shader->GetShaderLayout().set_layouts[0].second, ShaderType::Fragment);
p_set = RenderCore::Get().GetDescriptorPoolManager().GetAvailablePool(p_fragment_shader->GetShaderLayout().set_layouts[0].second, ShaderType::Fragment).RequestDescriptorSet(p_fragment_shader->GetShaderLayout().set_layouts[0].second, ShaderType::Fragment);
}
void FinalPass::Pass([[maybe_unused]] Scene& scene, Renderer& renderer, Texture& render_target, NonOwningPtr<class Texture> final_target)
+1 -1
View File
@@ -21,6 +21,6 @@ rm vulkan-headers.zip
# Update KVF
rm -f ../third_party/kvf.h
git clone https://github.com/Kbz-8/KVF.git ../third_party/KVF/
git clone https://git.kbz8.me/kbz_8/KVF.git ../third_party/KVF/
mv ../third_party/KVF/kvf.h ../third_party/kvf.h
rm -rf ../third_party/KVF
+15
View File
@@ -0,0 +1,15 @@
[wrap-file]
directory = SDL2-2.32.8
source_url = https://github.com/libsdl-org/SDL/releases/download/release-2.32.8/SDL2-2.32.8.tar.gz
source_filename = SDL2-2.32.8.tar.gz
source_hash = 0ca83e9c9b31e18288c7ec811108e58bac1f1bb5ec6577ad386830eac51c787e
patch_filename = sdl2_2.32.8-1_patch.zip
patch_url = https://wrapdb.mesonbuild.com/v2/sdl2_2.32.8-1/get_patch
patch_hash = 5df17ea39ca418826db20e96bd821fa52b5718dac64b6225119fb6588c2744f0
source_fallback_url = https://github.com/mesonbuild/wrapdb/releases/download/sdl2_2.32.8-1/SDL2-2.32.8.tar.gz
wrapdb_version = 2.32.8-1
[provide]
sdl2 = sdl2_dep
sdl2main = sdl2main_dep
sdl2_test = sdl2_test_dep
+249 -6
View File
@@ -1,7 +1,7 @@
/***
* MIT License
*
* Copyright (c) 2023-2024 kbz_8
* Copyright (c) 2023-2025 kbz_8
*
* Permission is hereby granted, free of charge, to any person obtaining a copy
* of this software and associated documentation files (the "Software"), to deal
@@ -55,6 +55,46 @@
#define VK_NO_PROTOTYPES
#endif
#ifndef KVF_NO_KHR
#ifdef VK_USE_PLATFORM_ANDROID_KHR
#include <vulkan/vulkan_android.h>
#endif
#ifdef VK_USE_PLATFORM_WAYLAND_KHR
#include <vulkan/vulkan_wayland.h>
#endif
#ifdef VK_USE_PLATFORM_WIN32_KHR
typedef struct HINSTANCE__* HINSTANCE;
typedef struct HWND__* HWND;
typedef struct HMONITOR__* HMONITOR;
typedef void* HANDLE;
typedef /*_Null_terminated_*/ const wchar_t* LPCWSTR;
typedef unsigned long DWORD;
typedef struct _SECURITY_ATTRIBUTES SECURITY_ATTRIBUTES;
#include <vulkan/vulkan_win32.h>
#endif
#ifdef VK_USE_PLATFORM_XCB_KHR
struct xcb_connection_t;
typedef uint32_t xcb_window_t;
typedef uint32_t xcb_visualid_t;
#include <vulkan/vulkan_xcb.h>
#endif
#ifdef VK_USE_PLATFORM_METAL_EXT
#include <vulkan/vulkan_metal.h>
#endif
#ifdef VK_USE_PLATFORM_XLIB_KHR
typedef struct _XDisplay Display;
typedef unsigned long XID;
typedef XID Window;
typedef unsigned long VisualID;
#include <vulkan/vulkan_xlib.h>
#endif
#endif
#include <vulkan/vulkan_core.h>
#include <stdint.h>
@@ -82,6 +122,18 @@ typedef enum
KVF_IMAGE_OTHER = 4,
} KvfImageType;
#ifndef KVF_NO_KHR
typedef enum
{
KVF_SURFACE_ANDROID = 0,
KVF_SURFACE_XLIB = 1,
KVF_SURFACE_XCB = 2,
KVF_SURFACE_WAYLAND = 3,
KVF_SURFACE_WINDOWS = 4,
KVF_SURFACE_METAL = 5,
} KvfSurfaceType;
#endif
typedef void (*KvfErrorCallback)(const char* message);
#ifdef KVF_IMPL_VK_NO_PROTOTYPES
@@ -104,6 +156,7 @@ void kvfSetValidationWarningCallback(KvfErrorCallback callback);
void kvfAddLayer(const char* layer);
VkInstance kvfCreateInstance(const char** extensions_enabled, uint32_t extensions_count);
VkInstance kvfCreateInstanceNext(const char** extensions_enabled, uint32_t extensions_count, void* p_next);
void kvfDestroyInstance(VkInstance instance);
// If surfaces given to theses functions are VK_NULL_HANDLE no present queues will be searched and thus kvfQueuePresentKHR will not work
@@ -147,10 +200,39 @@ void kvfDestroySemaphore(VkDevice device, VkSemaphore semaphore);
uint32_t kvfGetSwapchainMinImagesCount(VkSwapchainKHR swapchain);
VkExtent2D kvfGetSwapchainImagesSize(VkSwapchainKHR swapchain);
void kvfDestroySwapchainKHR(VkDevice device, VkSwapchainKHR swapchain);
/**
* For Windows:
* - instance_handle -> HINSTANCE
* - window_handle -> HWND window handle
*
* For Wayland:
* - instance_handle -> wl_display
* - window_handle -> wl_surface
*
* For XLIB:
* - instance_handle -> Display
* - window_handle -> Window
*
* For XCB:
* - instance_handle -> xcb_connection_t
* - window_handle -> xcb_window_t
*
* For Metal:
* - instance_handle -> ignored
* - window_handle -> CAMetalLayer
*
* For Android:
* - instance_handle -> ignored
* - window_handle -> ANativeWindow
*/
VkSurfaceKHR kvfCreateSurfaceKHR(VkInstance instance, KvfSurfaceType type, void* instance_handle, void* window_handle);
#endif
VkImage kvfCreateImage(VkDevice device, uint32_t width, uint32_t height, VkFormat format, VkImageTiling tiling, VkImageUsageFlags usage, KvfImageType type);
void kvfCopyImageToBuffer(VkCommandBuffer cmd, VkBuffer dst, VkImage src, size_t buffer_offset, VkImageAspectFlagBits aspect, VkExtent3D extent);
void kvfCopyImageToImage(VkCommandBuffer cmd, VkImage src, VkImageLayout src_layout, VkImage dst, VkImageLayout dst_layout, uint32_t count, const VkImageCopy* regions);
void kvfDestroyImage(VkDevice device, VkImage image);
VkImageView kvfCreateImageView(VkDevice device, VkImage image, VkFormat format, VkImageViewType type, VkImageAspectFlags aspect, int layer_count);
void kvfDestroyImageView(VkDevice device, VkImageView image_view);
@@ -235,6 +317,7 @@ VkPipeline kvfCreateGraphicsPipeline(VkDevice device, VkPipelineCache cache, VkP
void kvfDestroyPipeline(VkDevice device, VkPipeline pipeline);
void kvfCheckVk(VkResult result);
int32_t kvfFindMemoryType(VkPhysicalDevice physical_device, uint32_t type_filter, VkMemoryPropertyFlags properties);
#ifdef KVF_IMPL_VK_NO_PROTOTYPES
#ifdef KVF_DEFINE_VULKAN_FUNCTION_PROTOTYPE
@@ -268,6 +351,42 @@ void kvfCheckVk(VkResult result);
KVF_DEFINE_VULKAN_FUNCTION_PROTOTYPE(vkGetPhysicalDeviceSurfaceFormatsKHR);
KVF_DEFINE_VULKAN_FUNCTION_PROTOTYPE(vkGetPhysicalDeviceSurfacePresentModesKHR);
KVF_DEFINE_VULKAN_FUNCTION_PROTOTYPE(vkGetPhysicalDeviceSurfaceSupportKHR);
#ifdef VK_USE_PLATFORM_ANDROID_KHR
#ifdef VK_KHR_android_surface
KVF_DEFINE_VULKAN_FUNCTION_PROTOTYPE(vkCreateAndroidSurfaceKHR);
#endif
#endif
#ifdef VK_USE_PLATFORM_XCB_KHR
#ifdef VK_KHR_xcb_surface
KVF_DEFINE_VULKAN_FUNCTION_PROTOTYPE(vkCreateXcbSurfaceKHR);
#endif
#endif
#ifdef VK_USE_PLATFORM_XLIB_KHR
#ifdef VK_KHR_xlib_surface
KVF_DEFINE_VULKAN_FUNCTION_PROTOTYPE(vkCreateXlibSurfaceKHR);
#endif
#endif
#ifdef VK_USE_PLATFORM_WAYLAND_KHR
#ifdef VK_KHR_wayland_surface
KVF_DEFINE_VULKAN_FUNCTION_PROTOTYPE(vkCreateWaylandSurfaceKHR);
#endif
#endif
#ifdef VK_USE_PLATFORM_WIN32_KHR
#ifdef VK_KHR_win32_surface
KVF_DEFINE_VULKAN_FUNCTION_PROTOTYPE(vkCreateWin32SurfaceKHR);
#endif
#endif
#ifdef VK_USE_PLATFORM_METAL_EXT
#ifdef VK_EXT_metal_surface
KVF_DEFINE_VULKAN_FUNCTION_PROTOTYPE(vkCreateMetalSurfaceEXT);
#endif
#endif
#endif
};
@@ -519,6 +638,19 @@ void kvfCheckVk(VkResult result)
__kvfCheckVk(result);
}
int32_t kvfFindMemoryType(VkPhysicalDevice physical_device, uint32_t type_filter, VkMemoryPropertyFlags properties)
{
VkPhysicalDeviceMemoryProperties mem_properties;
KVF_GET_INSTANCE_FUNCTION(vkGetPhysicalDeviceMemoryProperties)(physical_device, &mem_properties);
for(int32_t i = 0; i < (int32_t)mem_properties.memoryTypeCount; i++)
{
if((type_filter & (1 << i)) && (mem_properties.memoryTypes[i].propertyFlags & properties) == properties)
return i;
}
return -1;
}
void __kvfAddDeviceToArray(VkPhysicalDevice device, int32_t graphics_queue, int32_t present_queue, int32_t compute_queue)
{
KVF_ASSERT(device != VK_NULL_HANDLE);
@@ -1151,7 +1283,7 @@ const char* kvfVerbaliseVkResult(VkResult result)
case VK_ERROR_OUT_OF_DATE_KHR: return "A surface has changed in such a way that it is no longer compatible with the swapchain";
case VK_ERROR_INCOMPATIBLE_DISPLAY_KHR: return "The display used by a swapchain does not use the same presentable image layout";
case VK_ERROR_NATIVE_WINDOW_IN_USE_KHR: return "The requested window is already connected to a VkSurfaceKHR, or to some other non-Vulkan API";
case VK_ERROR_VALIDATION_FAILED_EXT: return "A validation layer found an error";
case VK_ERROR_VALIDATION_FAILED_EXT: return "A command failed because invalid usage was detected by the implementation or a validation layer.";
default: return "Unknown Vulkan error";
}
@@ -1295,6 +1427,11 @@ void kvfAddLayer(const char* layer)
}
VkInstance kvfCreateInstance(const char** extensions_enabled, uint32_t extensions_count)
{
return kvfCreateInstanceNext(extensions_enabled, extensions_count, NULL);
}
VkInstance kvfCreateInstanceNext(const char** extensions_enabled, uint32_t extensions_count, void* p_next)
{
VkInstance instance = VK_NULL_HANDLE;
@@ -1305,7 +1442,7 @@ VkInstance kvfCreateInstance(const char** extensions_enabled, uint32_t extension
create_info.ppEnabledExtensionNames = extensions_enabled;
create_info.enabledLayerCount = 0;
create_info.ppEnabledLayerNames = NULL;
create_info.pNext = NULL;
create_info.pNext = p_next;
#if defined(VK_USE_PLATFORM_MACOS_MVK) || defined(VK_USE_PLATFORM_METAL_EXT)
create_info.flags = VK_INSTANCE_CREATE_ENUMERATE_PORTABILITY_BIT_KHR;
#else
@@ -1324,6 +1461,8 @@ VkInstance kvfCreateInstance(const char** extensions_enabled, uint32_t extension
memcpy(new_extension_set, extensions_enabled, sizeof(char*) * extensions_count);
new_extension_set[extensions_count] = VK_EXT_DEBUG_UTILS_EXTENSION_NAME;
debug_create_info.pNext = p_next;
create_info.enabledExtensionCount = extensions_count + 1;
create_info.ppEnabledExtensionNames = new_extension_set;
create_info.enabledLayerCount = __kvf_extra_layers_count;
@@ -2069,6 +2208,98 @@ void kvfDestroySemaphore(VkDevice device, VkSemaphore semaphore)
KVF_ASSERT(device != VK_NULL_HANDLE);
__kvfDestroySwapchain(device, swapchain);
}
VkSurfaceKHR kvfCreateSurfaceKHR(VkInstance instance, KvfSurfaceType type, void* instance_handle, void* window_handle)
{
VkSurfaceKHR surface = VK_NULL_HANDLE;
switch(type)
{
#ifdef VK_USE_PLATFORM_ANDROID_KHR
case KVF_SURFACE_ANDROID:
{
VkAndroidSurfaceCreateInfoKHR create_info = {};
create_info.sType = VK_STRUCTURE_TYPE_ANDROID_SURFACE_CREATE_INFO_KHR;
create_info.pNext = nullptr;
create_info.flags = 0;
create_info.window = (ANativeWindow*)window_handle;
kvfCheckVk(KVF_GET_INSTANCE_FUNCTION(vkCreateAndroidSurfaceKHR)(instance, &create_info, NULL, &surface));
break;
}
#endif
#ifdef VK_USE_PLATFORM_XLIB_KHR
case KVF_SURFACE_XLIB:
{
VkXlibSurfaceCreateInfoKHR create_info = {};
create_info.sType = VK_STRUCTURE_TYPE_XLIB_SURFACE_CREATE_INFO_KHR;
create_info.pNext = nullptr;
create_info.flags = 0;
create_info.dpy = (Display*)instance_handle;
create_info.window = *(Window*)window_handle;
kvfCheckVk(KVF_GET_INSTANCE_FUNCTION(vkCreateXlibSurfaceKHR)(instance, &create_info, NULL, &surface));
break;
}
#endif
#ifdef VK_USE_PLATFORM_XCB_KHR
case KVF_SURFACE_XCB:
{
VkXcbSurfaceCreateInfoKHR create_info = {};
create_info.sType = VK_STRUCTURE_TYPE_XCB_SURFACE_CREATE_INFO_KHR;
create_info.pNext = nullptr;
create_info.flags = 0;
create_info.connection = (xcb_connection_t*)instance_handle;
create_info.window = (*xcb_window_t*)window_handle;
kvfCheckVk(KVF_GET_INSTANCE_FUNCTION(vkCreateXcbSurfaceKHR)(instance, &create_info, NULL, &surface));
break;
}
#endif
#ifdef VK_USE_PLATFORM_WAYLAND_KHR
case KVF_SURFACE_WAYLAND:
{
VkWaylandSurfaceCreateInfoKHR create_info = {};
create_info.sType = VK_STRUCTURE_TYPE_WAYLAND_SURFACE_CREATE_INFO_KHR;
create_info.pNext = nullptr;
create_info.flags = 0;
create_info.display = (wl_display*)instance_handle;
create_info.surface = (wl_surface*)window_handle;
kvfCheckVk(KVF_GET_INSTANCE_FUNCTION(vkCreateWaylandSurfaceKHR)(instance, &create_info, NULL, &surface));
break;
}
#endif
#ifdef VK_USE_PLATFORM_WIN32_KHR
case KVF_SURFACE_WINDOWS:
{
VkWin32SurfaceCreateInfoKHR create_info = {};
create_info.sType = VK_STRUCTURE_TYPE_WIN32_SURFACE_CREATE_INFO_KHR;
create_info.pNext = nullptr;
create_info.flags = 0;
create_info.hinstance = (HINSTANCE)instance_handle;
create_info.hwnd = (HWND)window_handle;
kvfCheckVk(KVF_GET_INSTANCE_FUNCTION(vkCreateWin32SurfaceKHR)(instance, &create_info, NULL, &surface));
break;
}
#endif
#ifdef VK_USE_PLATFORM_METAL_EXT
case KVF_SURFACE_METAL:
{
VkMetalSurfaceCreateInfoEXT create_info = {};
create_info.sType = VK_STRUCTURE_TYPE_METAL_SURFACE_CREATE_INFO_EXT;
create_info.pNext = nullptr;
create_info.flags = 0;
create_info.pLayer = (CAMetalLayer*)window_handle;
kvfCheckVk(KVF_GET_INSTANCE_FUNCTION(vkCreateMetalSurfaceEXT)(instance, &create_info, NULL, &surface));
break;
}
#endif
default: break;
}
return surface;
}
#endif
VkImage kvfCreateImage(VkDevice device, uint32_t width, uint32_t height, VkFormat format, VkImageTiling tiling, VkImageUsageFlags usage, KvfImageType type)
@@ -2125,6 +2356,18 @@ void kvfCopyImageToBuffer(VkCommandBuffer cmd, VkBuffer dst, VkImage src, size_t
KVF_GET_DEVICE_FUNCTION(vkCmdCopyImageToBuffer)(cmd, src, VK_IMAGE_LAYOUT_TRANSFER_SRC_OPTIMAL, dst, 1, &region);
}
void kvfCopyImageToImage(VkCommandBuffer cmd, VkImage src, VkImageLayout src_layout, VkImage dst, VkImageLayout dst_layout, uint32_t count, const VkImageCopy* regions)
{
KVF_ASSERT(cmd != VK_NULL_HANDLE);
KVF_ASSERT(dst != VK_NULL_HANDLE);
KVF_ASSERT(src != VK_NULL_HANDLE);
#ifdef KVF_IMPL_VK_NO_PROTOTYPES
__KvfDevice* kvf_device = __kvfGetKvfDeviceFromVkCommandBuffer(cmd);
KVF_ASSERT(kvf_device != NULL && "could not find VkDevice in registered devices");
#endif
KVF_GET_DEVICE_FUNCTION(vkCmdCopyImage)(cmd, src, src_layout, dst, dst_layout, count, regions);
}
void kvfDestroyImage(VkDevice device, VkImage image)
{
if(image == VK_NULL_HANDLE)
@@ -2316,7 +2559,7 @@ void kvfCopyBufferToImage(VkCommandBuffer cmd, VkImage dst, VkBuffer src, size_t
void kvfDestroyBuffer(VkDevice device, VkBuffer buffer)
{
if(buffer != VK_NULL_HANDLE)
if(buffer == VK_NULL_HANDLE)
return;
KVF_ASSERT(device != VK_NULL_HANDLE);
__KvfDevice* kvf_device = __kvfGetKvfDeviceFromVkDevice(device);
@@ -2933,7 +3176,7 @@ void kvfGPipelineBuilderEnableAdditiveBlending(KvfGraphicsPipelineBuilder* build
builder->color_blend_attachment_state.dstColorBlendFactor = VK_BLEND_FACTOR_ONE;
builder->color_blend_attachment_state.colorBlendOp = VK_BLEND_OP_ADD;
builder->color_blend_attachment_state.srcAlphaBlendFactor = VK_BLEND_FACTOR_ONE;
builder->color_blend_attachment_state.dstAlphaBlendFactor = VK_BLEND_FACTOR_ZERO;
builder->color_blend_attachment_state.dstAlphaBlendFactor = VK_BLEND_FACTOR_ONE_MINUS_SRC_ALPHA;
builder->color_blend_attachment_state.alphaBlendOp = VK_BLEND_OP_ADD;
}
@@ -2946,7 +3189,7 @@ void kvfGPipelineBuilderEnableAlphaBlending(KvfGraphicsPipelineBuilder* builder)
builder->color_blend_attachment_state.dstColorBlendFactor = VK_BLEND_FACTOR_ONE_MINUS_SRC_ALPHA;
builder->color_blend_attachment_state.colorBlendOp = VK_BLEND_OP_ADD;
builder->color_blend_attachment_state.srcAlphaBlendFactor = VK_BLEND_FACTOR_ONE;
builder->color_blend_attachment_state.dstAlphaBlendFactor = VK_BLEND_FACTOR_ZERO;
builder->color_blend_attachment_state.dstAlphaBlendFactor = VK_BLEND_FACTOR_ONE_MINUS_SRC_ALPHA;
builder->color_blend_attachment_state.alphaBlendOp = VK_BLEND_OP_ADD;
}
+23 -23
View File
@@ -2,7 +2,7 @@
#define VULKAN_VIDEO_CODEC_AV1STD_H_ 1
/*
** Copyright 2015-2025 The Khronos Group Inc.
** Copyright 2015-2026 The Khronos Group Inc.
**
** SPDX-License-Identifier: Apache-2.0
*/
@@ -22,27 +22,27 @@ extern "C" {
// vulkan_video_codec_av1std is a preprocessor guard. Do not pass it to API calls.
#define vulkan_video_codec_av1std 1
#include "vulkan_video_codecs_common.h"
#define STD_VIDEO_AV1_NUM_REF_FRAMES 8
#define STD_VIDEO_AV1_REFS_PER_FRAME 7
#define STD_VIDEO_AV1_TOTAL_REFS_PER_FRAME 8
#define STD_VIDEO_AV1_MAX_TILE_COLS 64
#define STD_VIDEO_AV1_MAX_TILE_ROWS 64
#define STD_VIDEO_AV1_MAX_SEGMENTS 8
#define STD_VIDEO_AV1_SEG_LVL_MAX 8
#define STD_VIDEO_AV1_PRIMARY_REF_NONE 7
#define STD_VIDEO_AV1_SELECT_INTEGER_MV 2
#define STD_VIDEO_AV1_SELECT_SCREEN_CONTENT_TOOLS 2
#define STD_VIDEO_AV1_SKIP_MODE_FRAMES 2
#define STD_VIDEO_AV1_MAX_LOOP_FILTER_STRENGTHS 4
#define STD_VIDEO_AV1_LOOP_FILTER_ADJUSTMENTS 2
#define STD_VIDEO_AV1_MAX_CDEF_FILTER_STRENGTHS 8
#define STD_VIDEO_AV1_MAX_NUM_PLANES 3
#define STD_VIDEO_AV1_GLOBAL_MOTION_PARAMS 6
#define STD_VIDEO_AV1_MAX_NUM_Y_POINTS 14
#define STD_VIDEO_AV1_MAX_NUM_CB_POINTS 10
#define STD_VIDEO_AV1_MAX_NUM_CR_POINTS 10
#define STD_VIDEO_AV1_MAX_NUM_POS_LUMA 24
#define STD_VIDEO_AV1_MAX_NUM_POS_CHROMA 25
#define STD_VIDEO_AV1_NUM_REF_FRAMES 8U
#define STD_VIDEO_AV1_REFS_PER_FRAME 7U
#define STD_VIDEO_AV1_TOTAL_REFS_PER_FRAME 8U
#define STD_VIDEO_AV1_MAX_TILE_COLS 64U
#define STD_VIDEO_AV1_MAX_TILE_ROWS 64U
#define STD_VIDEO_AV1_MAX_SEGMENTS 8U
#define STD_VIDEO_AV1_SEG_LVL_MAX 8U
#define STD_VIDEO_AV1_PRIMARY_REF_NONE 7U
#define STD_VIDEO_AV1_SELECT_INTEGER_MV 2U
#define STD_VIDEO_AV1_SELECT_SCREEN_CONTENT_TOOLS 2U
#define STD_VIDEO_AV1_SKIP_MODE_FRAMES 2U
#define STD_VIDEO_AV1_MAX_LOOP_FILTER_STRENGTHS 4U
#define STD_VIDEO_AV1_LOOP_FILTER_ADJUSTMENTS 2U
#define STD_VIDEO_AV1_MAX_CDEF_FILTER_STRENGTHS 8U
#define STD_VIDEO_AV1_MAX_NUM_PLANES 3U
#define STD_VIDEO_AV1_GLOBAL_MOTION_PARAMS 6U
#define STD_VIDEO_AV1_MAX_NUM_Y_POINTS 14U
#define STD_VIDEO_AV1_MAX_NUM_CB_POINTS 10U
#define STD_VIDEO_AV1_MAX_NUM_CR_POINTS 10U
#define STD_VIDEO_AV1_MAX_NUM_POS_LUMA 24U
#define STD_VIDEO_AV1_MAX_NUM_POS_CHROMA 25U
typedef enum StdVideoAV1Profile {
STD_VIDEO_AV1_PROFILE_MAIN = 0,
@@ -144,7 +144,7 @@ typedef enum StdVideoAV1ColorPrimaries {
STD_VIDEO_AV1_COLOR_PRIMARIES_SMPTE_432 = 12,
STD_VIDEO_AV1_COLOR_PRIMARIES_EBU_3213 = 22,
STD_VIDEO_AV1_COLOR_PRIMARIES_INVALID = 0x7FFFFFFF,
// STD_VIDEO_AV1_COLOR_PRIMARIES_BT_UNSPECIFIED is a deprecated alias
// STD_VIDEO_AV1_COLOR_PRIMARIES_BT_UNSPECIFIED is a legacy alias
STD_VIDEO_AV1_COLOR_PRIMARIES_BT_UNSPECIFIED = STD_VIDEO_AV1_COLOR_PRIMARIES_UNSPECIFIED,
STD_VIDEO_AV1_COLOR_PRIMARIES_MAX_ENUM = 0x7FFFFFFF
} StdVideoAV1ColorPrimaries;
+1 -1
View File
@@ -2,7 +2,7 @@
#define VULKAN_VIDEO_CODEC_AV1STD_DECODE_H_ 1
/*
** Copyright 2015-2025 The Khronos Group Inc.
** Copyright 2015-2026 The Khronos Group Inc.
**
** SPDX-License-Identifier: Apache-2.0
*/
+1 -1
View File
@@ -2,7 +2,7 @@
#define VULKAN_VIDEO_CODEC_AV1STD_ENCODE_H_ 1
/*
** Copyright 2015-2025 The Khronos Group Inc.
** Copyright 2015-2026 The Khronos Group Inc.
**
** SPDX-License-Identifier: Apache-2.0
*/
+9 -9
View File
@@ -2,7 +2,7 @@
#define VULKAN_VIDEO_CODEC_H264STD_H_ 1
/*
** Copyright 2015-2025 The Khronos Group Inc.
** Copyright 2015-2026 The Khronos Group Inc.
**
** SPDX-License-Identifier: Apache-2.0
*/
@@ -22,14 +22,14 @@ extern "C" {
// vulkan_video_codec_h264std is a preprocessor guard. Do not pass it to API calls.
#define vulkan_video_codec_h264std 1
#include "vulkan_video_codecs_common.h"
#define STD_VIDEO_H264_CPB_CNT_LIST_SIZE 32
#define STD_VIDEO_H264_SCALING_LIST_4X4_NUM_LISTS 6
#define STD_VIDEO_H264_SCALING_LIST_4X4_NUM_ELEMENTS 16
#define STD_VIDEO_H264_SCALING_LIST_8X8_NUM_LISTS 6
#define STD_VIDEO_H264_SCALING_LIST_8X8_NUM_ELEMENTS 64
#define STD_VIDEO_H264_MAX_NUM_LIST_REF 32
#define STD_VIDEO_H264_MAX_CHROMA_PLANES 2
#define STD_VIDEO_H264_NO_REFERENCE_PICTURE 0xFF
#define STD_VIDEO_H264_CPB_CNT_LIST_SIZE 32U
#define STD_VIDEO_H264_SCALING_LIST_4X4_NUM_LISTS 6U
#define STD_VIDEO_H264_SCALING_LIST_4X4_NUM_ELEMENTS 16U
#define STD_VIDEO_H264_SCALING_LIST_8X8_NUM_LISTS 6U
#define STD_VIDEO_H264_SCALING_LIST_8X8_NUM_ELEMENTS 64U
#define STD_VIDEO_H264_MAX_NUM_LIST_REF 32U
#define STD_VIDEO_H264_MAX_CHROMA_PLANES 2U
#define STD_VIDEO_H264_NO_REFERENCE_PICTURE 0xFFU
typedef enum StdVideoH264ChromaFormatIdc {
STD_VIDEO_H264_CHROMA_FORMAT_IDC_MONOCHROME = 0,
+2 -2
View File
@@ -2,7 +2,7 @@
#define VULKAN_VIDEO_CODEC_H264STD_DECODE_H_ 1
/*
** Copyright 2015-2025 The Khronos Group Inc.
** Copyright 2015-2026 The Khronos Group Inc.
**
** SPDX-License-Identifier: Apache-2.0
*/
@@ -27,7 +27,7 @@ extern "C" {
#define VK_STD_VULKAN_VIDEO_CODEC_H264_DECODE_SPEC_VERSION VK_STD_VULKAN_VIDEO_CODEC_H264_DECODE_API_VERSION_1_0_0
#define VK_STD_VULKAN_VIDEO_CODEC_H264_DECODE_EXTENSION_NAME "VK_STD_vulkan_video_codec_h264_decode"
#define STD_VIDEO_DECODE_H264_FIELD_ORDER_COUNT_LIST_SIZE 2
#define STD_VIDEO_DECODE_H264_FIELD_ORDER_COUNT_LIST_SIZE 2U
typedef enum StdVideoDecodeH264FieldOrderCount {
STD_VIDEO_DECODE_H264_FIELD_ORDER_COUNT_TOP = 0,
+1 -1
View File
@@ -2,7 +2,7 @@
#define VULKAN_VIDEO_CODEC_H264STD_ENCODE_H_ 1
/*
** Copyright 2015-2025 The Khronos Group Inc.
** Copyright 2015-2026 The Khronos Group Inc.
**
** SPDX-License-Identifier: Apache-2.0
*/
+24 -24
View File
@@ -2,7 +2,7 @@
#define VULKAN_VIDEO_CODEC_H265STD_H_ 1
/*
** Copyright 2015-2025 The Khronos Group Inc.
** Copyright 2015-2026 The Khronos Group Inc.
**
** SPDX-License-Identifier: Apache-2.0
*/
@@ -22,29 +22,29 @@ extern "C" {
// vulkan_video_codec_h265std is a preprocessor guard. Do not pass it to API calls.
#define vulkan_video_codec_h265std 1
#include "vulkan_video_codecs_common.h"
#define STD_VIDEO_H265_CPB_CNT_LIST_SIZE 32
#define STD_VIDEO_H265_SUBLAYERS_LIST_SIZE 7
#define STD_VIDEO_H265_SCALING_LIST_4X4_NUM_LISTS 6
#define STD_VIDEO_H265_SCALING_LIST_4X4_NUM_ELEMENTS 16
#define STD_VIDEO_H265_SCALING_LIST_8X8_NUM_LISTS 6
#define STD_VIDEO_H265_SCALING_LIST_8X8_NUM_ELEMENTS 64
#define STD_VIDEO_H265_SCALING_LIST_16X16_NUM_LISTS 6
#define STD_VIDEO_H265_SCALING_LIST_16X16_NUM_ELEMENTS 64
#define STD_VIDEO_H265_SCALING_LIST_32X32_NUM_LISTS 2
#define STD_VIDEO_H265_SCALING_LIST_32X32_NUM_ELEMENTS 64
#define STD_VIDEO_H265_CHROMA_QP_OFFSET_LIST_SIZE 6
#define STD_VIDEO_H265_CHROMA_QP_OFFSET_TILE_COLS_LIST_SIZE 19
#define STD_VIDEO_H265_CHROMA_QP_OFFSET_TILE_ROWS_LIST_SIZE 21
#define STD_VIDEO_H265_PREDICTOR_PALETTE_COMPONENTS_LIST_SIZE 3
#define STD_VIDEO_H265_PREDICTOR_PALETTE_COMP_ENTRIES_LIST_SIZE 128
#define STD_VIDEO_H265_MAX_NUM_LIST_REF 15
#define STD_VIDEO_H265_MAX_CHROMA_PLANES 2
#define STD_VIDEO_H265_MAX_SHORT_TERM_REF_PIC_SETS 64
#define STD_VIDEO_H265_MAX_DPB_SIZE 16
#define STD_VIDEO_H265_MAX_LONG_TERM_REF_PICS_SPS 32
#define STD_VIDEO_H265_MAX_LONG_TERM_PICS 16
#define STD_VIDEO_H265_MAX_DELTA_POC 48
#define STD_VIDEO_H265_NO_REFERENCE_PICTURE 0xFF
#define STD_VIDEO_H265_CPB_CNT_LIST_SIZE 32U
#define STD_VIDEO_H265_SUBLAYERS_LIST_SIZE 7U
#define STD_VIDEO_H265_SCALING_LIST_4X4_NUM_LISTS 6U
#define STD_VIDEO_H265_SCALING_LIST_4X4_NUM_ELEMENTS 16U
#define STD_VIDEO_H265_SCALING_LIST_8X8_NUM_LISTS 6U
#define STD_VIDEO_H265_SCALING_LIST_8X8_NUM_ELEMENTS 64U
#define STD_VIDEO_H265_SCALING_LIST_16X16_NUM_LISTS 6U
#define STD_VIDEO_H265_SCALING_LIST_16X16_NUM_ELEMENTS 64U
#define STD_VIDEO_H265_SCALING_LIST_32X32_NUM_LISTS 2U
#define STD_VIDEO_H265_SCALING_LIST_32X32_NUM_ELEMENTS 64U
#define STD_VIDEO_H265_CHROMA_QP_OFFSET_LIST_SIZE 6U
#define STD_VIDEO_H265_CHROMA_QP_OFFSET_TILE_COLS_LIST_SIZE 19U
#define STD_VIDEO_H265_CHROMA_QP_OFFSET_TILE_ROWS_LIST_SIZE 21U
#define STD_VIDEO_H265_PREDICTOR_PALETTE_COMPONENTS_LIST_SIZE 3U
#define STD_VIDEO_H265_PREDICTOR_PALETTE_COMP_ENTRIES_LIST_SIZE 128U
#define STD_VIDEO_H265_MAX_NUM_LIST_REF 15U
#define STD_VIDEO_H265_MAX_CHROMA_PLANES 2U
#define STD_VIDEO_H265_MAX_SHORT_TERM_REF_PIC_SETS 64U
#define STD_VIDEO_H265_MAX_DPB_SIZE 16U
#define STD_VIDEO_H265_MAX_LONG_TERM_REF_PICS_SPS 32U
#define STD_VIDEO_H265_MAX_LONG_TERM_PICS 16U
#define STD_VIDEO_H265_MAX_DELTA_POC 48U
#define STD_VIDEO_H265_NO_REFERENCE_PICTURE 0xFFU
typedef enum StdVideoH265ChromaFormatIdc {
STD_VIDEO_H265_CHROMA_FORMAT_IDC_MONOCHROME = 0,
+2 -2
View File
@@ -2,7 +2,7 @@
#define VULKAN_VIDEO_CODEC_H265STD_DECODE_H_ 1
/*
** Copyright 2015-2025 The Khronos Group Inc.
** Copyright 2015-2026 The Khronos Group Inc.
**
** SPDX-License-Identifier: Apache-2.0
*/
@@ -27,7 +27,7 @@ extern "C" {
#define VK_STD_VULKAN_VIDEO_CODEC_H265_DECODE_SPEC_VERSION VK_STD_VULKAN_VIDEO_CODEC_H265_DECODE_API_VERSION_1_0_0
#define VK_STD_VULKAN_VIDEO_CODEC_H265_DECODE_EXTENSION_NAME "VK_STD_vulkan_video_codec_h265_decode"
#define STD_VIDEO_DECODE_H265_REF_PIC_SET_LIST_SIZE 8
#define STD_VIDEO_DECODE_H265_REF_PIC_SET_LIST_SIZE 8U
typedef struct StdVideoDecodeH265PictureInfoFlags {
uint32_t IrapPicFlag : 1;
uint32_t IdrPicFlag : 1;
+1 -1
View File
@@ -2,7 +2,7 @@
#define VULKAN_VIDEO_CODEC_H265STD_ENCODE_H_ 1
/*
** Copyright 2015-2025 The Khronos Group Inc.
** Copyright 2015-2026 The Khronos Group Inc.
**
** SPDX-License-Identifier: Apache-2.0
*/
+9 -9
View File
@@ -2,7 +2,7 @@
#define VULKAN_VIDEO_CODEC_VP9STD_H_ 1
/*
** Copyright 2015-2025 The Khronos Group Inc.
** Copyright 2015-2026 The Khronos Group Inc.
**
** SPDX-License-Identifier: Apache-2.0
*/
@@ -22,14 +22,14 @@ extern "C" {
// vulkan_video_codec_vp9std is a preprocessor guard. Do not pass it to API calls.
#define vulkan_video_codec_vp9std 1
#include "vulkan_video_codecs_common.h"
#define STD_VIDEO_VP9_NUM_REF_FRAMES 8
#define STD_VIDEO_VP9_REFS_PER_FRAME 3
#define STD_VIDEO_VP9_MAX_REF_FRAMES 4
#define STD_VIDEO_VP9_LOOP_FILTER_ADJUSTMENTS 2
#define STD_VIDEO_VP9_MAX_SEGMENTS 8
#define STD_VIDEO_VP9_SEG_LVL_MAX 4
#define STD_VIDEO_VP9_MAX_SEGMENTATION_TREE_PROBS 7
#define STD_VIDEO_VP9_MAX_SEGMENTATION_PRED_PROB 3
#define STD_VIDEO_VP9_NUM_REF_FRAMES 8U
#define STD_VIDEO_VP9_REFS_PER_FRAME 3U
#define STD_VIDEO_VP9_MAX_REF_FRAMES 4U
#define STD_VIDEO_VP9_LOOP_FILTER_ADJUSTMENTS 2U
#define STD_VIDEO_VP9_MAX_SEGMENTS 8U
#define STD_VIDEO_VP9_SEG_LVL_MAX 4U
#define STD_VIDEO_VP9_MAX_SEGMENTATION_TREE_PROBS 7U
#define STD_VIDEO_VP9_MAX_SEGMENTATION_PRED_PROB 3U
typedef enum StdVideoVP9Profile {
STD_VIDEO_VP9_PROFILE_0 = 0,
+1 -1
View File
@@ -2,7 +2,7 @@
#define VULKAN_VIDEO_CODEC_VP9STD_DECODE_H_ 1
/*
** Copyright 2015-2025 The Khronos Group Inc.
** Copyright 2015-2026 The Khronos Group Inc.
**
** SPDX-License-Identifier: Apache-2.0
*/
+1 -1
View File
@@ -2,7 +2,7 @@
#define VULKAN_VIDEO_CODECS_COMMON_H_ 1
/*
** Copyright 2015-2025 The Khronos Group Inc.
** Copyright 2015-2026 The Khronos Group Inc.
**
** SPDX-License-Identifier: Apache-2.0
*/
+2 -1
View File
@@ -44,8 +44,9 @@
typedef VkResult(VKAPI_PTR *PFN_vkNegotiateLoaderICDInterfaceVersion)(uint32_t *pVersion);
// This is defined in vk_layer.h which will be found by the loader, but if an ICD is building against this
// file directly, it won't be found.
#ifndef PFN_GetPhysicalDeviceProcAddr
#ifndef IS_DEFINED_PFN_GetPhysicalDeviceProcAddr
typedef PFN_vkVoidFunction(VKAPI_PTR *PFN_GetPhysicalDeviceProcAddr)(VkInstance instance, const char *pName);
#define IS_DEFINED_PFN_GetPhysicalDeviceProcAddr
#endif
// Typedefs for loader/ICD interface
+3
View File
@@ -27,7 +27,10 @@
#define VK_CURRENT_CHAIN_VERSION 1
// Typedef for use in the interfaces below
#ifndef IS_DEFINED_PFN_GetPhysicalDeviceProcAddr
typedef PFN_vkVoidFunction (VKAPI_PTR *PFN_GetPhysicalDeviceProcAddr)(VkInstance instance, const char* pName);
#define IS_DEFINED_PFN_GetPhysicalDeviceProcAddr
#endif
// Version negotiation values
typedef enum VkNegotiateLayerStructType {
+1 -1
View File
@@ -2,7 +2,7 @@
// File: vk_platform.h
//
/*
** Copyright 2014-2025 The Khronos Group Inc.
** Copyright 2014-2026 The Khronos Group Inc.
**
** SPDX-License-Identifier: Apache-2.0
*/
+917 -8449
View File
File diff suppressed because it is too large Load Diff
+1 -1
View File
@@ -2,7 +2,7 @@
#define VULKAN_H_ 1
/*
** Copyright 2015-2025 The Khronos Group Inc.
** Copyright 2015-2026 The Khronos Group Inc.
**
** SPDX-License-Identifier: Apache-2.0
*/
+24121 -11053
View File
File diff suppressed because it is too large Load Diff
+1 -1
View File
@@ -2,7 +2,7 @@
#define VULKAN_ANDROID_H_ 1
/*
** Copyright 2015-2025 The Khronos Group Inc.
** Copyright 2015-2026 The Khronos Group Inc.
**
** SPDX-License-Identifier: Apache-2.0
*/
+32 -1
View File
@@ -2,7 +2,7 @@
#define VULKAN_BETA_H_ 1
/*
** Copyright 2015-2025 The Khronos Group Inc.
** Copyright 2015-2026 The Khronos Group Inc.
**
** SPDX-License-Identifier: Apache-2.0
*/
@@ -337,6 +337,37 @@ typedef struct VkAccelerationStructureTrianglesDisplacementMicromapNV {
} VkAccelerationStructureTrianglesDisplacementMicromapNV;
// VK_AMDX_dense_geometry_format is a preprocessor guard. Do not pass it to API calls.
#define VK_AMDX_dense_geometry_format 1
#define VK_AMDX_DENSE_GEOMETRY_FORMAT_SPEC_VERSION 1
#define VK_AMDX_DENSE_GEOMETRY_FORMAT_EXTENSION_NAME "VK_AMDX_dense_geometry_format"
#define VK_COMPRESSED_TRIANGLE_FORMAT_DGF1_BYTE_ALIGNMENT_AMDX 128U
#define VK_COMPRESSED_TRIANGLE_FORMAT_DGF1_BYTE_STRIDE_AMDX 128U
typedef enum VkCompressedTriangleFormatAMDX {
VK_COMPRESSED_TRIANGLE_FORMAT_DGF1_AMDX = 0,
VK_COMPRESSED_TRIANGLE_FORMAT_MAX_ENUM_AMDX = 0x7FFFFFFF
} VkCompressedTriangleFormatAMDX;
typedef struct VkPhysicalDeviceDenseGeometryFormatFeaturesAMDX {
VkStructureType sType;
void* pNext;
VkBool32 denseGeometryFormat;
} VkPhysicalDeviceDenseGeometryFormatFeaturesAMDX;
typedef struct VkAccelerationStructureDenseGeometryFormatTrianglesDataAMDX {
VkStructureType sType;
const void* pNext;
VkDeviceOrHostAddressConstKHR compressedData;
VkDeviceSize dataSize;
uint32_t numTriangles;
uint32_t numVertices;
uint32_t maxPrimitiveIndex;
uint32_t maxGeometryIndex;
VkCompressedTriangleFormatAMDX format;
} VkAccelerationStructureDenseGeometryFormatTrianglesDataAMDX;
#ifdef __cplusplus
}
#endif
+5372 -2545
View File
File diff suppressed because it is too large Load Diff
+1 -1
View File
@@ -2,7 +2,7 @@
#define VULKAN_DIRECTFB_H_ 1
/*
** Copyright 2015-2025 The Khronos Group Inc.
** Copyright 2015-2026 The Khronos Group Inc.
**
** SPDX-License-Identifier: Apache-2.0
*/
+7810 -7232
View File
File diff suppressed because it is too large Load Diff
File diff suppressed because it is too large Load Diff
+6175 -4660
View File
File diff suppressed because one or more lines are too long
+1 -1
View File
@@ -2,7 +2,7 @@
#define VULKAN_FUCHSIA_H_ 1
/*
** Copyright 2015-2025 The Khronos Group Inc.
** Copyright 2015-2026 The Khronos Group Inc.
**
** SPDX-License-Identifier: Apache-2.0
*/
+22064 -15310
View File
File diff suppressed because it is too large Load Diff
+1 -1
View File
@@ -2,7 +2,7 @@
#define VULKAN_GGP_H_ 1
/*
** Copyright 2015-2025 The Khronos Group Inc.
** Copyright 2015-2026 The Khronos Group Inc.
**
** SPDX-License-Identifier: Apache-2.0
*/
+14724 -8195
View File
File diff suppressed because it is too large Load Diff
+15126 -10818
View File
File diff suppressed because it is too large Load Diff
+76 -47
View File
@@ -1,11 +1,10 @@
// Copyright 2015-2025 The Khronos Group Inc.
// Copyright 2015-2026 The Khronos Group Inc.
//
// SPDX-License-Identifier: Apache-2.0 OR MIT
//
// This header is generated from the Khronos Vulkan XML API Registry.
#ifndef VULKAN_HPP_MACROS_HPP
#define VULKAN_HPP_MACROS_HPP
@@ -36,6 +35,18 @@
# include <ciso646>
#endif
#define VULKAN_HPP_STRINGIFY2( text ) #text
#define VULKAN_HPP_STRINGIFY( text ) VULKAN_HPP_STRINGIFY2( text )
#define VULKAN_HPP_NAMESPACE_STRING VULKAN_HPP_STRINGIFY( VULKAN_HPP_NAMESPACE )
#if defined( __clang__ ) || defined( __GNUC__ ) || defined( __GNUG__ )
# define VULKAN_HPP_COMPILE_WARNING( text ) _Pragma( VULKAN_HPP_STRINGIFY( GCC warning text ) )
#elif defined( _MSC_VER )
# define VULKAN_HPP_COMPILE_WARNING( text ) _Pragma( VULKAN_HPP_STRINGIFY( message( __FILE__ "(" VULKAN_HPP_STRINGIFY( __LINE__ ) "): warning: " text ) ) )
#else
# define VULKAN_HPP_COMPILE_WARNING( text )
#endif
#if defined( VULKAN_HPP_DISABLE_ENHANCED_MODE )
# if !defined( VULKAN_HPP_NO_SMART_HANDLE )
# define VULKAN_HPP_NO_SMART_HANDLE
@@ -76,6 +87,23 @@
# define VULKAN_HPP_ENABLE_DYNAMIC_LOADER_TOOL 1
#endif
#if VULKAN_HPP_ENABLE_DYNAMIC_LOADER_TOOL == 1
# if defined( __unix__ ) || defined( __APPLE__ ) || defined( __QNX__ ) || defined( __Fuchsia__ ) && !defined( VULKAN_HPP_CXX_MODULE )
# include <dlfcn.h>
# elif defined( _WIN32 ) && !defined( VULKAN_HPP_NO_WIN32_PROTOTYPES )
using HINSTANCE = struct HINSTANCE__ *;
# if defined( _WIN64 )
# include <cstdint>
using FARPROC = int64_t( __stdcall * )();
# else
using FARPROC = int( __stdcall * )();
# endif
extern "C" __declspec( dllimport ) HINSTANCE __stdcall LoadLibraryA( char const * lpLibFileName );
extern "C" __declspec( dllimport ) int __stdcall FreeLibrary( HINSTANCE hLibModule );
extern "C" __declspec( dllimport ) FARPROC __stdcall GetProcAddress( HINSTANCE hModule, char const * lpProcName );
# endif
#endif
#if !defined( __has_include )
# define __has_include( x ) false
#endif
@@ -88,16 +116,23 @@
# define VULKAN_HPP_SUPPORT_SPAN
#endif
#if defined( __cpp_lib_modules ) && !defined( VULKAN_HPP_STD_MODULE ) && defined( VULKAN_HPP_ENABLE_STD_MODULE )
# define VULKAN_HPP_STD_MODULE std.compat
#if defined( VULKAN_HPP_CXX_MODULE )
# define VULKAN_HPP_EXPORT export
#else
# define VULKAN_HPP_EXPORT
#endif
#if defined( VULKAN_HPP_CXX_MODULE ) && !( defined( __cpp_modules ) && defined( __cpp_lib_modules ) )
VULKAN_HPP_COMPILE_WARNING( "This is a non-conforming implementation of C++ named modules and the standard library module." )
#endif
#ifndef VK_USE_64_BIT_PTR_DEFINES
#if defined(__LP64__) || defined(_WIN64) || (defined(__x86_64__) && !defined(__ILP32__) ) || defined(_M_X64) || defined(__ia64) || defined (_M_IA64) || defined(__aarch64__) || defined(__powerpc64__) || (defined(__riscv) && __riscv_xlen == 64)
#define VK_USE_64_BIT_PTR_DEFINES 1
#else
#define VK_USE_64_BIT_PTR_DEFINES 0
#endif
# if defined( __LP64__ ) || defined( _WIN64 ) || ( defined( __x86_64__ ) && !defined( __ILP32__ ) ) || defined( _M_X64 ) || defined( __ia64 ) || \
defined( _M_IA64 ) || defined( __aarch64__ ) || defined( __powerpc64__ ) || ( defined( __riscv ) && __riscv_xlen == 64 )
# define VK_USE_64_BIT_PTR_DEFINES 1
# else
# define VK_USE_64_BIT_PTR_DEFINES 0
# endif
#endif
// 32-bit vulkan is not typesafe for non-dispatchable handles, so don't allow copy constructors on this platform by default.
@@ -158,7 +193,12 @@
# else
# define VULKAN_HPP_CONSTEXPR_14
# endif
# if ( 201907 <= __cpp_constexpr ) && ( !defined( __GNUC__ ) || ( 110400 < GCC_VERSION ) )
# if 201603 <= __cpp_constexpr
# define VULKAN_HPP_CONSTEXPR_17 constexpr
# else
# define VULKAN_HPP_CONSTEXPR_17
# endif
# if ( 201907 <= __cpp_constexpr ) && ( !defined( __GNUC__ ) || ( 120000 <= GCC_VERSION ) )
# define VULKAN_HPP_CONSTEXPR_20 constexpr
# else
# define VULKAN_HPP_CONSTEXPR_20
@@ -216,14 +256,18 @@
# define VULKAN_HPP_NODISCARD_WHEN_NO_EXCEPTIONS
#endif
#if 17 <= VULKAN_HPP_CPP_VERSION
# define VULKAN_HPP_MAYBE_UNUSED [[maybe_unused]]
# define VULKAN_HPP_UNUSED( var )
#else
# define VULKAN_HPP_MAYBE_UNUSED
# define VULKAN_HPP_UNUSED( var ) ( (void)( var ) )
#endif
#if !defined( VULKAN_HPP_NAMESPACE )
# define VULKAN_HPP_NAMESPACE vk
#endif
#define VULKAN_HPP_STRINGIFY2( text ) #text
#define VULKAN_HPP_STRINGIFY( text ) VULKAN_HPP_STRINGIFY2( text )
#define VULKAN_HPP_NAMESPACE_STRING VULKAN_HPP_STRINGIFY( VULKAN_HPP_NAMESPACE )
#if !defined( VULKAN_HPP_DISPATCH_LOADER_DYNAMIC )
# if defined( VK_NO_PROTOTYPES )
# define VULKAN_HPP_DISPATCH_LOADER_DYNAMIC 1
@@ -255,19 +299,20 @@
# endif
#endif
namespace VULKAN_HPP_NAMESPACE
{
namespace detail
{
class DispatchLoaderDynamic;
#if !defined( VULKAN_HPP_DISPATCH_LOADER_DYNAMIC_TYPE )
# define VULKAN_HPP_DISPATCH_LOADER_DYNAMIC_TYPE VULKAN_HPP_NAMESPACE::detail::DispatchLoaderDynamic
#endif
#if !defined( VULKAN_HPP_DISPATCH_LOADER_STATIC_TYPE )
# define VULKAN_HPP_DISPATCH_LOADER_STATIC_TYPE VULKAN_HPP_NAMESPACE::detail::DispatchLoaderStatic
#endif
#if !defined( VULKAN_HPP_DEFAULT_DISPATCHER )
#if !defined( VULKAN_HPP_DEFAULT_DISPATCHER_TYPE )
# if VULKAN_HPP_DISPATCH_LOADER_DYNAMIC == 1
extern VULKAN_HPP_STORAGE_API DispatchLoaderDynamic defaultDispatchLoaderDynamic;
# define VULKAN_HPP_DEFAULT_DISPATCHER_TYPE VULKAN_HPP_DISPATCH_LOADER_DYNAMIC_TYPE
# else
# define VULKAN_HPP_DEFAULT_DISPATCHER_TYPE VULKAN_HPP_DISPATCH_LOADER_STATIC_TYPE
# endif
#endif
} // namespace detail
} // namespace VULKAN_HPP_NAMESPACE
#if !defined( VULKAN_HPP_DEFAULT_DISPATCHER )
# if VULKAN_HPP_DISPATCH_LOADER_DYNAMIC == 1
@@ -284,27 +329,18 @@ namespace VULKAN_HPP_NAMESPACE
# define VULKAN_HPP_DEFAULT_DISPATCHER ::VULKAN_HPP_NAMESPACE::detail::getDispatchLoaderStatic()
# define VULKAN_HPP_DEFAULT_DISPATCH_LOADER_DYNAMIC_STORAGE
# endif
#endif
#if !defined( VULKAN_HPP_DEFAULT_DISPATCHER_TYPE )
# if VULKAN_HPP_DISPATCH_LOADER_DYNAMIC == 1
# define VULKAN_HPP_DEFAULT_DISPATCHER_TYPE ::VULKAN_HPP_NAMESPACE::detail::DispatchLoaderDynamic
# else
# define VULKAN_HPP_DEFAULT_DISPATCHER_TYPE ::VULKAN_HPP_NAMESPACE::detail::DispatchLoaderStatic
# endif
#else
# define VULKAN_HPP_DEFAULT_DISPATCHER_HANDLED
#endif
#if defined( VULKAN_HPP_NO_DEFAULT_DISPATCHER )
# define VULKAN_HPP_DEFAULT_ARGUMENT_ASSIGNMENT
# define VULKAN_HPP_DEFAULT_ARGUMENT_NULLPTR_ASSIGNMENT
# define VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT
# define VULKAN_HPP_DEFAULT_ASSIGNMENT( assignment )
#else
# define VULKAN_HPP_DEFAULT_ARGUMENT_ASSIGNMENT = {}
# define VULKAN_HPP_DEFAULT_ARGUMENT_NULLPTR_ASSIGNMENT = nullptr
# define VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT = VULKAN_HPP_DEFAULT_DISPATCHER
# define VULKAN_HPP_DEFAULT_ASSIGNMENT( assignment ) = assignment
#endif
#define VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT VULKAN_HPP_DEFAULT_ASSIGNMENT( VULKAN_HPP_DEFAULT_DISPATCHER )
#if !defined( VULKAN_HPP_EXPECTED ) && ( 23 <= VULKAN_HPP_CPP_VERSION ) && defined( __cpp_lib_expected )
#if !defined( VULKAN_HPP_EXPECTED ) && ( 23 <= VULKAN_HPP_CPP_VERSION ) && defined( __cpp_lib_expected ) && defined( VULKAN_HPP_USE_STD_EXPECTED )
# if !( defined( VULKAN_HPP_ENABLE_STD_MODULE ) && defined( VULKAN_HPP_STD_MODULE ) )
# include <expected>
# endif
@@ -313,15 +349,8 @@ namespace VULKAN_HPP_NAMESPACE
#endif
#if !defined( VULKAN_HPP_RAII_NAMESPACE )
# define VULKAN_HPP_RAII_NAMESPACE raii
# define VULKAN_HPP_RAII_NAMESPACE raii
# define VULKAN_HPP_RAII_NAMESPACE_STRING VULKAN_HPP_STRINGIFY( VULKAN_HPP_NAMESPACE::VULKAN_HPP_RAII_NAMESPACE )
#endif
#if defined( VULKAN_HPP_NO_EXCEPTIONS ) && defined( VULKAN_HPP_EXPECTED )
# define VULKAN_HPP_RAII_NO_EXCEPTIONS
# define VULKAN_HPP_RAII_CREATE_NOEXCEPT noexcept
#else
# define VULKAN_HPP_RAII_CREATE_NOEXCEPT
#endif
#endif
+1 -1
View File
@@ -2,7 +2,7 @@
#define VULKAN_IOS_H_ 1
/*
** Copyright 2015-2025 The Khronos Group Inc.
** Copyright 2015-2026 The Khronos Group Inc.
**
** SPDX-License-Identifier: Apache-2.0
*/
+1 -1
View File
@@ -2,7 +2,7 @@
#define VULKAN_MACOS_H_ 1
/*
** Copyright 2015-2025 The Khronos Group Inc.
** Copyright 2015-2026 The Khronos Group Inc.
**
** SPDX-License-Identifier: Apache-2.0
*/
+1 -1
View File
@@ -2,7 +2,7 @@
#define VULKAN_METAL_H_ 1
/*
** Copyright 2015-2025 The Khronos Group Inc.
** Copyright 2015-2026 The Khronos Group Inc.
**
** SPDX-License-Identifier: Apache-2.0
*/
+72 -5
View File
@@ -2,7 +2,7 @@
#define VULKAN_OHOS_H_ 1
/*
** Copyright 2015-2025 The Khronos Group Inc.
** Copyright 2015-2026 The Khronos Group Inc.
**
** SPDX-License-Identifier: Apache-2.0
*/
@@ -19,20 +19,87 @@ extern "C" {
// VK_OHOS_external_memory is a preprocessor guard. Do not pass it to API calls.
#define VK_OHOS_external_memory 1
struct OH_NativeBuffer;
#define VK_OHOS_EXTERNAL_MEMORY_SPEC_VERSION 1
#define VK_OHOS_EXTERNAL_MEMORY_EXTENSION_NAME "VK_OHOS_external_memory"
typedef struct VkNativeBufferUsageOHOS {
VkStructureType sType;
void* pNext;
uint64_t OHOSNativeBufferUsage;
} VkNativeBufferUsageOHOS;
typedef struct VkNativeBufferPropertiesOHOS {
VkStructureType sType;
void* pNext;
VkDeviceSize allocationSize;
uint32_t memoryTypeBits;
} VkNativeBufferPropertiesOHOS;
typedef struct VkNativeBufferFormatPropertiesOHOS {
VkStructureType sType;
void* pNext;
VkFormat format;
uint64_t externalFormat;
VkFormatFeatureFlags formatFeatures;
VkComponentMapping samplerYcbcrConversionComponents;
VkSamplerYcbcrModelConversion suggestedYcbcrModel;
VkSamplerYcbcrRange suggestedYcbcrRange;
VkChromaLocation suggestedXChromaOffset;
VkChromaLocation suggestedYChromaOffset;
} VkNativeBufferFormatPropertiesOHOS;
typedef struct VkImportNativeBufferInfoOHOS {
VkStructureType sType;
const void* pNext;
struct OH_NativeBuffer* buffer;
} VkImportNativeBufferInfoOHOS;
typedef struct VkMemoryGetNativeBufferInfoOHOS {
VkStructureType sType;
const void* pNext;
VkDeviceMemory memory;
} VkMemoryGetNativeBufferInfoOHOS;
typedef struct VkExternalFormatOHOS {
VkStructureType sType;
void* pNext;
uint64_t externalFormat;
} VkExternalFormatOHOS;
typedef VkResult (VKAPI_PTR *PFN_vkGetNativeBufferPropertiesOHOS)(VkDevice device, const struct OH_NativeBuffer* buffer, VkNativeBufferPropertiesOHOS* pProperties);
typedef VkResult (VKAPI_PTR *PFN_vkGetMemoryNativeBufferOHOS)(VkDevice device, const VkMemoryGetNativeBufferInfoOHOS* pInfo, struct OH_NativeBuffer** pBuffer);
#ifndef VK_NO_PROTOTYPES
#ifndef VK_ONLY_EXPORTED_PROTOTYPES
VKAPI_ATTR VkResult VKAPI_CALL vkGetNativeBufferPropertiesOHOS(
VkDevice device,
const struct OH_NativeBuffer* buffer,
VkNativeBufferPropertiesOHOS* pProperties);
#endif
#ifndef VK_ONLY_EXPORTED_PROTOTYPES
VKAPI_ATTR VkResult VKAPI_CALL vkGetMemoryNativeBufferOHOS(
VkDevice device,
const VkMemoryGetNativeBufferInfoOHOS* pInfo,
struct OH_NativeBuffer** pBuffer);
#endif
#endif
// VK_OHOS_surface is a preprocessor guard. Do not pass it to API calls.
#define VK_OHOS_surface 1
typedef struct NativeWindow OHNativeWindow;
#define VK_OHOS_SURFACE_SPEC_VERSION 1
#define VK_OHOS_SURFACE_EXTENSION_NAME "VK_OHOS_surface"
typedef VkFlags VkSurfaceCreateFlagsOHOS;
typedef struct VkOHSurfaceCreateInfoOHOS {
typedef struct VkSurfaceCreateInfoOHOS {
VkStructureType sType;
const void* pNext;
VkSurfaceCreateFlagsOHOS flags;
OHNativeWindow* window;
} VkOHSurfaceCreateInfoOHOS;
typedef VkOHSurfaceCreateInfoOHOS VkSurfaceCreateInfoOHOS;
} VkSurfaceCreateInfoOHOS;
typedef VkResult (VKAPI_PTR *PFN_vkCreateSurfaceOHOS)(VkInstance instance, const VkSurfaceCreateInfoOHOS* pCreateInfo, const VkAllocationCallbacks* pAllocator, VkSurfaceKHR* pSurface);
+28536 -23409
View File
File diff suppressed because it is too large Load Diff
+1 -1
View File
@@ -2,7 +2,7 @@
#define VULKAN_SCREEN_H_ 1
/*
** Copyright 2015-2025 The Khronos Group Inc.
** Copyright 2015-2026 The Khronos Group Inc.
**
** SPDX-License-Identifier: Apache-2.0
*/
+776 -674
View File
File diff suppressed because it is too large Load Diff
File diff suppressed because it is too large Load Diff
+118010 -58403
View File
File diff suppressed because one or more lines are too long
+7555 -5933
View File
File diff suppressed because it is too large Load Diff
+1 -1
View File
@@ -2,7 +2,7 @@
#define VULKAN_VI_H_ 1
/*
** Copyright 2015-2025 The Khronos Group Inc.
** Copyright 2015-2026 The Khronos Group Inc.
**
** SPDX-License-Identifier: Apache-2.0
*/
+60 -159
View File
@@ -1,171 +1,72 @@
// Copyright 2021-2025 The Khronos Group Inc.
// Copyright 2021-2026 The Khronos Group Inc.
// SPDX-License-Identifier: Apache-2.0 OR MIT
//
// This header is generated from the Khronos Vulkan XML API Registry.
// Note: This module is still in an experimental state.
// Any feedback is welcome on https://github.com/KhronosGroup/Vulkan-Hpp/issues.
module;
#include <vulkan/vulkan_hpp_macros.hpp>
#define VULKAN_HPP_CXX_MODULE 1
#if defined( __cpp_lib_modules ) && !defined( VULKAN_HPP_ENABLE_STD_MODULE )
# define VULKAN_HPP_ENABLE_STD_MODULE
#if __has_include( <vk_video/vulkan_video_codecs_common.h> )
# include <vk_video/vulkan_video_codecs_common.h>
#endif
#if __has_include( <vk_video/vulkan_video_codec_h264std.h> )
# include <vk_video/vulkan_video_codec_h264std.h>
#endif
#if __has_include( <vk_video/vulkan_video_codec_h264std_decode.h> )
# include <vk_video/vulkan_video_codec_h264std_decode.h>
#endif
#if __has_include( <vk_video/vulkan_video_codec_h264std_encode.h> )
# include <vk_video/vulkan_video_codec_h264std_encode.h>
#endif
#if __has_include( <vk_video/vulkan_video_codec_h265std.h> )
# include <vk_video/vulkan_video_codec_h265std.h>
#endif
#if __has_include( <vk_video/vulkan_video_codec_h265std_decode.h> )
# include <vk_video/vulkan_video_codec_h265std_decode.h>
#endif
#if __has_include( <vk_video/vulkan_video_codec_h265std_encode.h> )
# include <vk_video/vulkan_video_codec_h265std_encode.h>
#endif
#if __has_include( <vk_video/vulkan_video_codec_vp9std.h> )
# include <vk_video/vulkan_video_codec_vp9std.h>
#endif
#if __has_include( <vk_video/vulkan_video_codec_vp9std_decode.h> )
# include <vk_video/vulkan_video_codec_vp9std_decode.h>
#endif
#if __has_include( <vk_video/vulkan_video_codec_av1std.h> )
# include <vk_video/vulkan_video_codec_av1std.h>
#endif
#if __has_include( <vk_video/vulkan_video_codec_av1std_decode.h> )
# include <vk_video/vulkan_video_codec_av1std_decode.h>
#endif
#if __has_include( <vk_video/vulkan_video_codec_av1std_encode.h> )
# include <vk_video/vulkan_video_codec_av1std_encode.h>
#endif
// clang-format off
#include <vulkan/vulkan_hpp_macros.hpp>
// clang-format on
export module vulkan_video;
import vulkan;
#if defined( _MSC_VER )
# pragma warning( push )
# pragma warning( disable : 5244 )
#elif defined( __clang__ )
# pragma clang diagnostic push
# pragma clang diagnostic ignored "-Winclude-angled-in-module-purview"
#elif defined( __GNUC__ )
#endif
#include <vulkan/vulkan_video.hpp>
export module vulkan_video_hpp;
export namespace VULKAN_HPP_NAMESPACE
{
namespace VULKAN_HPP_VIDEO_NAMESPACE
{
//=============
//=== ENUMs ===
//=============
using VULKAN_HPP_NAMESPACE::VULKAN_HPP_VIDEO_NAMESPACE::AV1ChromaSamplePosition;
using VULKAN_HPP_NAMESPACE::VULKAN_HPP_VIDEO_NAMESPACE::AV1ColorPrimaries;
using VULKAN_HPP_NAMESPACE::VULKAN_HPP_VIDEO_NAMESPACE::AV1FrameRestorationType;
using VULKAN_HPP_NAMESPACE::VULKAN_HPP_VIDEO_NAMESPACE::AV1FrameType;
using VULKAN_HPP_NAMESPACE::VULKAN_HPP_VIDEO_NAMESPACE::AV1InterpolationFilter;
using VULKAN_HPP_NAMESPACE::VULKAN_HPP_VIDEO_NAMESPACE::AV1Level;
using VULKAN_HPP_NAMESPACE::VULKAN_HPP_VIDEO_NAMESPACE::AV1MatrixCoefficients;
using VULKAN_HPP_NAMESPACE::VULKAN_HPP_VIDEO_NAMESPACE::AV1Profile;
using VULKAN_HPP_NAMESPACE::VULKAN_HPP_VIDEO_NAMESPACE::AV1ReferenceName;
using VULKAN_HPP_NAMESPACE::VULKAN_HPP_VIDEO_NAMESPACE::AV1TransferCharacteristics;
using VULKAN_HPP_NAMESPACE::VULKAN_HPP_VIDEO_NAMESPACE::AV1TxMode;
using VULKAN_HPP_NAMESPACE::VULKAN_HPP_VIDEO_NAMESPACE::DecodeH264FieldOrderCount;
using VULKAN_HPP_NAMESPACE::VULKAN_HPP_VIDEO_NAMESPACE::H264AspectRatioIdc;
using VULKAN_HPP_NAMESPACE::VULKAN_HPP_VIDEO_NAMESPACE::H264CabacInitIdc;
using VULKAN_HPP_NAMESPACE::VULKAN_HPP_VIDEO_NAMESPACE::H264ChromaFormatIdc;
using VULKAN_HPP_NAMESPACE::VULKAN_HPP_VIDEO_NAMESPACE::H264DisableDeblockingFilterIdc;
using VULKAN_HPP_NAMESPACE::VULKAN_HPP_VIDEO_NAMESPACE::H264LevelIdc;
using VULKAN_HPP_NAMESPACE::VULKAN_HPP_VIDEO_NAMESPACE::H264MemMgmtControlOp;
using VULKAN_HPP_NAMESPACE::VULKAN_HPP_VIDEO_NAMESPACE::H264ModificationOfPicNumsIdc;
using VULKAN_HPP_NAMESPACE::VULKAN_HPP_VIDEO_NAMESPACE::H264NonVclNaluType;
using VULKAN_HPP_NAMESPACE::VULKAN_HPP_VIDEO_NAMESPACE::H264PictureType;
using VULKAN_HPP_NAMESPACE::VULKAN_HPP_VIDEO_NAMESPACE::H264PocType;
using VULKAN_HPP_NAMESPACE::VULKAN_HPP_VIDEO_NAMESPACE::H264ProfileIdc;
using VULKAN_HPP_NAMESPACE::VULKAN_HPP_VIDEO_NAMESPACE::H264SliceType;
using VULKAN_HPP_NAMESPACE::VULKAN_HPP_VIDEO_NAMESPACE::H264WeightedBipredIdc;
using VULKAN_HPP_NAMESPACE::VULKAN_HPP_VIDEO_NAMESPACE::H265AspectRatioIdc;
using VULKAN_HPP_NAMESPACE::VULKAN_HPP_VIDEO_NAMESPACE::H265ChromaFormatIdc;
using VULKAN_HPP_NAMESPACE::VULKAN_HPP_VIDEO_NAMESPACE::H265LevelIdc;
using VULKAN_HPP_NAMESPACE::VULKAN_HPP_VIDEO_NAMESPACE::H265PictureType;
using VULKAN_HPP_NAMESPACE::VULKAN_HPP_VIDEO_NAMESPACE::H265ProfileIdc;
using VULKAN_HPP_NAMESPACE::VULKAN_HPP_VIDEO_NAMESPACE::H265SliceType;
using VULKAN_HPP_NAMESPACE::VULKAN_HPP_VIDEO_NAMESPACE::VP9ColorSpace;
using VULKAN_HPP_NAMESPACE::VULKAN_HPP_VIDEO_NAMESPACE::VP9FrameType;
using VULKAN_HPP_NAMESPACE::VULKAN_HPP_VIDEO_NAMESPACE::VP9InterpolationFilter;
using VULKAN_HPP_NAMESPACE::VULKAN_HPP_VIDEO_NAMESPACE::VP9Level;
using VULKAN_HPP_NAMESPACE::VULKAN_HPP_VIDEO_NAMESPACE::VP9Profile;
using VULKAN_HPP_NAMESPACE::VULKAN_HPP_VIDEO_NAMESPACE::VP9ReferenceName;
//===============
//=== STRUCTS ===
//===============
using VULKAN_HPP_NAMESPACE::VULKAN_HPP_VIDEO_NAMESPACE::AV1CDEF;
using VULKAN_HPP_NAMESPACE::VULKAN_HPP_VIDEO_NAMESPACE::AV1ColorConfig;
using VULKAN_HPP_NAMESPACE::VULKAN_HPP_VIDEO_NAMESPACE::AV1ColorConfigFlags;
using VULKAN_HPP_NAMESPACE::VULKAN_HPP_VIDEO_NAMESPACE::AV1FilmGrain;
using VULKAN_HPP_NAMESPACE::VULKAN_HPP_VIDEO_NAMESPACE::AV1FilmGrainFlags;
using VULKAN_HPP_NAMESPACE::VULKAN_HPP_VIDEO_NAMESPACE::AV1GlobalMotion;
using VULKAN_HPP_NAMESPACE::VULKAN_HPP_VIDEO_NAMESPACE::AV1LoopFilter;
using VULKAN_HPP_NAMESPACE::VULKAN_HPP_VIDEO_NAMESPACE::AV1LoopFilterFlags;
using VULKAN_HPP_NAMESPACE::VULKAN_HPP_VIDEO_NAMESPACE::AV1LoopRestoration;
using VULKAN_HPP_NAMESPACE::VULKAN_HPP_VIDEO_NAMESPACE::AV1Quantization;
using VULKAN_HPP_NAMESPACE::VULKAN_HPP_VIDEO_NAMESPACE::AV1QuantizationFlags;
using VULKAN_HPP_NAMESPACE::VULKAN_HPP_VIDEO_NAMESPACE::AV1Segmentation;
using VULKAN_HPP_NAMESPACE::VULKAN_HPP_VIDEO_NAMESPACE::AV1SequenceHeader;
using VULKAN_HPP_NAMESPACE::VULKAN_HPP_VIDEO_NAMESPACE::AV1SequenceHeaderFlags;
using VULKAN_HPP_NAMESPACE::VULKAN_HPP_VIDEO_NAMESPACE::AV1TileInfo;
using VULKAN_HPP_NAMESPACE::VULKAN_HPP_VIDEO_NAMESPACE::AV1TileInfoFlags;
using VULKAN_HPP_NAMESPACE::VULKAN_HPP_VIDEO_NAMESPACE::AV1TimingInfo;
using VULKAN_HPP_NAMESPACE::VULKAN_HPP_VIDEO_NAMESPACE::AV1TimingInfoFlags;
using VULKAN_HPP_NAMESPACE::VULKAN_HPP_VIDEO_NAMESPACE::DecodeAV1PictureInfo;
using VULKAN_HPP_NAMESPACE::VULKAN_HPP_VIDEO_NAMESPACE::DecodeAV1PictureInfoFlags;
using VULKAN_HPP_NAMESPACE::VULKAN_HPP_VIDEO_NAMESPACE::DecodeAV1ReferenceInfo;
using VULKAN_HPP_NAMESPACE::VULKAN_HPP_VIDEO_NAMESPACE::DecodeAV1ReferenceInfoFlags;
using VULKAN_HPP_NAMESPACE::VULKAN_HPP_VIDEO_NAMESPACE::DecodeH264PictureInfo;
using VULKAN_HPP_NAMESPACE::VULKAN_HPP_VIDEO_NAMESPACE::DecodeH264PictureInfoFlags;
using VULKAN_HPP_NAMESPACE::VULKAN_HPP_VIDEO_NAMESPACE::DecodeH264ReferenceInfo;
using VULKAN_HPP_NAMESPACE::VULKAN_HPP_VIDEO_NAMESPACE::DecodeH264ReferenceInfoFlags;
using VULKAN_HPP_NAMESPACE::VULKAN_HPP_VIDEO_NAMESPACE::DecodeH265PictureInfo;
using VULKAN_HPP_NAMESPACE::VULKAN_HPP_VIDEO_NAMESPACE::DecodeH265PictureInfoFlags;
using VULKAN_HPP_NAMESPACE::VULKAN_HPP_VIDEO_NAMESPACE::DecodeH265ReferenceInfo;
using VULKAN_HPP_NAMESPACE::VULKAN_HPP_VIDEO_NAMESPACE::DecodeH265ReferenceInfoFlags;
using VULKAN_HPP_NAMESPACE::VULKAN_HPP_VIDEO_NAMESPACE::DecodeVP9PictureInfo;
using VULKAN_HPP_NAMESPACE::VULKAN_HPP_VIDEO_NAMESPACE::DecodeVP9PictureInfoFlags;
using VULKAN_HPP_NAMESPACE::VULKAN_HPP_VIDEO_NAMESPACE::EncodeAV1DecoderModelInfo;
using VULKAN_HPP_NAMESPACE::VULKAN_HPP_VIDEO_NAMESPACE::EncodeAV1ExtensionHeader;
using VULKAN_HPP_NAMESPACE::VULKAN_HPP_VIDEO_NAMESPACE::EncodeAV1OperatingPointInfo;
using VULKAN_HPP_NAMESPACE::VULKAN_HPP_VIDEO_NAMESPACE::EncodeAV1OperatingPointInfoFlags;
using VULKAN_HPP_NAMESPACE::VULKAN_HPP_VIDEO_NAMESPACE::EncodeAV1PictureInfo;
using VULKAN_HPP_NAMESPACE::VULKAN_HPP_VIDEO_NAMESPACE::EncodeAV1PictureInfoFlags;
using VULKAN_HPP_NAMESPACE::VULKAN_HPP_VIDEO_NAMESPACE::EncodeAV1ReferenceInfo;
using VULKAN_HPP_NAMESPACE::VULKAN_HPP_VIDEO_NAMESPACE::EncodeAV1ReferenceInfoFlags;
using VULKAN_HPP_NAMESPACE::VULKAN_HPP_VIDEO_NAMESPACE::EncodeH264PictureInfo;
using VULKAN_HPP_NAMESPACE::VULKAN_HPP_VIDEO_NAMESPACE::EncodeH264PictureInfoFlags;
using VULKAN_HPP_NAMESPACE::VULKAN_HPP_VIDEO_NAMESPACE::EncodeH264ReferenceInfo;
using VULKAN_HPP_NAMESPACE::VULKAN_HPP_VIDEO_NAMESPACE::EncodeH264ReferenceInfoFlags;
using VULKAN_HPP_NAMESPACE::VULKAN_HPP_VIDEO_NAMESPACE::EncodeH264ReferenceListsInfo;
using VULKAN_HPP_NAMESPACE::VULKAN_HPP_VIDEO_NAMESPACE::EncodeH264ReferenceListsInfoFlags;
using VULKAN_HPP_NAMESPACE::VULKAN_HPP_VIDEO_NAMESPACE::EncodeH264RefListModEntry;
using VULKAN_HPP_NAMESPACE::VULKAN_HPP_VIDEO_NAMESPACE::EncodeH264RefPicMarkingEntry;
using VULKAN_HPP_NAMESPACE::VULKAN_HPP_VIDEO_NAMESPACE::EncodeH264SliceHeader;
using VULKAN_HPP_NAMESPACE::VULKAN_HPP_VIDEO_NAMESPACE::EncodeH264SliceHeaderFlags;
using VULKAN_HPP_NAMESPACE::VULKAN_HPP_VIDEO_NAMESPACE::EncodeH264WeightTable;
using VULKAN_HPP_NAMESPACE::VULKAN_HPP_VIDEO_NAMESPACE::EncodeH264WeightTableFlags;
using VULKAN_HPP_NAMESPACE::VULKAN_HPP_VIDEO_NAMESPACE::EncodeH265LongTermRefPics;
using VULKAN_HPP_NAMESPACE::VULKAN_HPP_VIDEO_NAMESPACE::EncodeH265PictureInfo;
using VULKAN_HPP_NAMESPACE::VULKAN_HPP_VIDEO_NAMESPACE::EncodeH265PictureInfoFlags;
using VULKAN_HPP_NAMESPACE::VULKAN_HPP_VIDEO_NAMESPACE::EncodeH265ReferenceInfo;
using VULKAN_HPP_NAMESPACE::VULKAN_HPP_VIDEO_NAMESPACE::EncodeH265ReferenceInfoFlags;
using VULKAN_HPP_NAMESPACE::VULKAN_HPP_VIDEO_NAMESPACE::EncodeH265ReferenceListsInfo;
using VULKAN_HPP_NAMESPACE::VULKAN_HPP_VIDEO_NAMESPACE::EncodeH265ReferenceListsInfoFlags;
using VULKAN_HPP_NAMESPACE::VULKAN_HPP_VIDEO_NAMESPACE::EncodeH265SliceSegmentHeader;
using VULKAN_HPP_NAMESPACE::VULKAN_HPP_VIDEO_NAMESPACE::EncodeH265SliceSegmentHeaderFlags;
using VULKAN_HPP_NAMESPACE::VULKAN_HPP_VIDEO_NAMESPACE::EncodeH265WeightTable;
using VULKAN_HPP_NAMESPACE::VULKAN_HPP_VIDEO_NAMESPACE::EncodeH265WeightTableFlags;
using VULKAN_HPP_NAMESPACE::VULKAN_HPP_VIDEO_NAMESPACE::H264HrdParameters;
using VULKAN_HPP_NAMESPACE::VULKAN_HPP_VIDEO_NAMESPACE::H264PictureParameterSet;
using VULKAN_HPP_NAMESPACE::VULKAN_HPP_VIDEO_NAMESPACE::H264PpsFlags;
using VULKAN_HPP_NAMESPACE::VULKAN_HPP_VIDEO_NAMESPACE::H264ScalingLists;
using VULKAN_HPP_NAMESPACE::VULKAN_HPP_VIDEO_NAMESPACE::H264SequenceParameterSet;
using VULKAN_HPP_NAMESPACE::VULKAN_HPP_VIDEO_NAMESPACE::H264SequenceParameterSetVui;
using VULKAN_HPP_NAMESPACE::VULKAN_HPP_VIDEO_NAMESPACE::H264SpsFlags;
using VULKAN_HPP_NAMESPACE::VULKAN_HPP_VIDEO_NAMESPACE::H264SpsVuiFlags;
using VULKAN_HPP_NAMESPACE::VULKAN_HPP_VIDEO_NAMESPACE::H265DecPicBufMgr;
using VULKAN_HPP_NAMESPACE::VULKAN_HPP_VIDEO_NAMESPACE::H265HrdFlags;
using VULKAN_HPP_NAMESPACE::VULKAN_HPP_VIDEO_NAMESPACE::H265HrdParameters;
using VULKAN_HPP_NAMESPACE::VULKAN_HPP_VIDEO_NAMESPACE::H265LongTermRefPicsSps;
using VULKAN_HPP_NAMESPACE::VULKAN_HPP_VIDEO_NAMESPACE::H265PictureParameterSet;
using VULKAN_HPP_NAMESPACE::VULKAN_HPP_VIDEO_NAMESPACE::H265PpsFlags;
using VULKAN_HPP_NAMESPACE::VULKAN_HPP_VIDEO_NAMESPACE::H265PredictorPaletteEntries;
using VULKAN_HPP_NAMESPACE::VULKAN_HPP_VIDEO_NAMESPACE::H265ProfileTierLevel;
using VULKAN_HPP_NAMESPACE::VULKAN_HPP_VIDEO_NAMESPACE::H265ProfileTierLevelFlags;
using VULKAN_HPP_NAMESPACE::VULKAN_HPP_VIDEO_NAMESPACE::H265ScalingLists;
using VULKAN_HPP_NAMESPACE::VULKAN_HPP_VIDEO_NAMESPACE::H265SequenceParameterSet;
using VULKAN_HPP_NAMESPACE::VULKAN_HPP_VIDEO_NAMESPACE::H265SequenceParameterSetVui;
using VULKAN_HPP_NAMESPACE::VULKAN_HPP_VIDEO_NAMESPACE::H265ShortTermRefPicSet;
using VULKAN_HPP_NAMESPACE::VULKAN_HPP_VIDEO_NAMESPACE::H265ShortTermRefPicSetFlags;
using VULKAN_HPP_NAMESPACE::VULKAN_HPP_VIDEO_NAMESPACE::H265SpsFlags;
using VULKAN_HPP_NAMESPACE::VULKAN_HPP_VIDEO_NAMESPACE::H265SpsVuiFlags;
using VULKAN_HPP_NAMESPACE::VULKAN_HPP_VIDEO_NAMESPACE::H265SubLayerHrdParameters;
using VULKAN_HPP_NAMESPACE::VULKAN_HPP_VIDEO_NAMESPACE::H265VideoParameterSet;
using VULKAN_HPP_NAMESPACE::VULKAN_HPP_VIDEO_NAMESPACE::H265VpsFlags;
using VULKAN_HPP_NAMESPACE::VULKAN_HPP_VIDEO_NAMESPACE::VP9ColorConfig;
using VULKAN_HPP_NAMESPACE::VULKAN_HPP_VIDEO_NAMESPACE::VP9ColorConfigFlags;
using VULKAN_HPP_NAMESPACE::VULKAN_HPP_VIDEO_NAMESPACE::VP9LoopFilter;
using VULKAN_HPP_NAMESPACE::VULKAN_HPP_VIDEO_NAMESPACE::VP9LoopFilterFlags;
using VULKAN_HPP_NAMESPACE::VULKAN_HPP_VIDEO_NAMESPACE::VP9Segmentation;
using VULKAN_HPP_NAMESPACE::VULKAN_HPP_VIDEO_NAMESPACE::VP9SegmentationFlags;
} // namespace VULKAN_HPP_VIDEO_NAMESPACE
} // namespace VULKAN_HPP_NAMESPACE
#if defined( _MSC_VER )
# pragma warning( pop )
#elif defined( __clang__ )
# pragma clang diagnostic pop
#elif defined( __GNUC__ )
#endif
+407 -290
View File
@@ -1,4 +1,4 @@
// Copyright 2021-2025 The Khronos Group Inc.
// Copyright 2021-2026 The Khronos Group Inc.
// SPDX-License-Identifier: Apache-2.0 OR MIT
//
@@ -7,31 +7,150 @@
#ifndef VULKAN_VIDEO_HPP
#define VULKAN_VIDEO_HPP
// clang-format off
#include <vulkan/vulkan.hpp>
// clang-format on
// here, we consider include files to be available when __has_include is not defined
#if !defined( __has_include )
# define __has_include( x ) true
# define has_include_was_not_defined
#endif
#include <vk_video/vulkan_video_codec_av1std.h>
#include <vk_video/vulkan_video_codec_av1std_decode.h>
#include <vk_video/vulkan_video_codec_av1std_encode.h>
#include <vk_video/vulkan_video_codec_h264std.h>
#include <vk_video/vulkan_video_codec_h264std_decode.h>
#include <vk_video/vulkan_video_codec_h264std_encode.h>
#include <vk_video/vulkan_video_codec_h265std.h>
#include <vk_video/vulkan_video_codec_h265std_decode.h>
#include <vk_video/vulkan_video_codec_h265std_encode.h>
#include <vk_video/vulkan_video_codec_vp9std.h>
#include <vk_video/vulkan_video_codec_vp9std_decode.h>
#include <vk_video/vulkan_video_codecs_common.h>
#if !defined( VULKAN_HPP_CXX_MODULE )
# include <vulkan/vulkan.hpp>
# if __has_include( <vk_video/vulkan_video_codecs_common.h> )
# include <vk_video/vulkan_video_codecs_common.h>
# endif
# if __has_include( <vk_video/vulkan_video_codec_h264std.h> )
# include <vk_video/vulkan_video_codec_h264std.h>
# endif
# if __has_include( <vk_video/vulkan_video_codec_h264std_decode.h> )
# include <vk_video/vulkan_video_codec_h264std_decode.h>
# endif
# if __has_include( <vk_video/vulkan_video_codec_h264std_encode.h> )
# include <vk_video/vulkan_video_codec_h264std_encode.h>
# endif
# if __has_include( <vk_video/vulkan_video_codec_h265std.h> )
# include <vk_video/vulkan_video_codec_h265std.h>
# endif
# if __has_include( <vk_video/vulkan_video_codec_h265std_decode.h> )
# include <vk_video/vulkan_video_codec_h265std_decode.h>
# endif
# if __has_include( <vk_video/vulkan_video_codec_h265std_encode.h> )
# include <vk_video/vulkan_video_codec_h265std_encode.h>
# endif
# if __has_include( <vk_video/vulkan_video_codec_vp9std.h> )
# include <vk_video/vulkan_video_codec_vp9std.h>
# endif
# if __has_include( <vk_video/vulkan_video_codec_vp9std_decode.h> )
# include <vk_video/vulkan_video_codec_vp9std_decode.h>
# endif
# if __has_include( <vk_video/vulkan_video_codec_av1std.h> )
# include <vk_video/vulkan_video_codec_av1std.h>
# endif
# if __has_include( <vk_video/vulkan_video_codec_av1std_decode.h> )
# include <vk_video/vulkan_video_codec_av1std_decode.h>
# endif
# if __has_include( <vk_video/vulkan_video_codec_av1std_encode.h> )
# include <vk_video/vulkan_video_codec_av1std_encode.h>
# endif
#endif
#if !defined( VULKAN_HPP_VIDEO_NAMESPACE )
# define VULKAN_HPP_VIDEO_NAMESPACE video
#endif
namespace VULKAN_HPP_NAMESPACE
VULKAN_HPP_EXPORT namespace VULKAN_HPP_NAMESPACE
{
namespace VULKAN_HPP_VIDEO_NAMESPACE
{
//=================
//=== CONSTANTs ===
//=================
#if defined( VULKAN_VIDEO_CODEC_H264STD_H_ )
//=== vulkan_video_codec_h264std ===
VULKAN_HPP_CONSTEXPR_INLINE uint32_t H264CpbCntListSize = 32;
VULKAN_HPP_CONSTEXPR_INLINE uint32_t H264MaxChromaPlanes = 2;
VULKAN_HPP_CONSTEXPR_INLINE uint32_t H264MaxNumListRef = 32;
VULKAN_HPP_CONSTEXPR_INLINE uint8_t H264NoReferencePicture = 0xFF;
VULKAN_HPP_CONSTEXPR_INLINE uint32_t H264ScalingList4X4NumElements = 16;
VULKAN_HPP_CONSTEXPR_INLINE uint32_t H264ScalingList4X4NumLists = 6;
VULKAN_HPP_CONSTEXPR_INLINE uint32_t H264ScalingList8X8NumElements = 64;
VULKAN_HPP_CONSTEXPR_INLINE uint32_t H264ScalingList8X8NumLists = 6;
#endif
#if defined( VULKAN_VIDEO_CODEC_H264STD_DECODE_H_ )
//=== vulkan_video_codec_h264std_decode ===
VULKAN_HPP_CONSTEXPR_INLINE uint32_t DecodeH264FieldOrderCountListSize = 2;
#endif
#if defined( VULKAN_VIDEO_CODEC_H265STD_H_ )
//=== vulkan_video_codec_h265std ===
VULKAN_HPP_CONSTEXPR_INLINE uint32_t H265ChromaQpOffsetListSize = 6;
VULKAN_HPP_CONSTEXPR_INLINE uint32_t H265ChromaQpOffsetTileColsListSize = 19;
VULKAN_HPP_CONSTEXPR_INLINE uint32_t H265ChromaQpOffsetTileRowsListSize = 21;
VULKAN_HPP_CONSTEXPR_INLINE uint32_t H265CpbCntListSize = 32;
VULKAN_HPP_CONSTEXPR_INLINE uint32_t H265MaxChromaPlanes = 2;
VULKAN_HPP_CONSTEXPR_INLINE uint32_t H265MaxDeltaPoc = 48;
VULKAN_HPP_CONSTEXPR_INLINE uint32_t H265MaxDpbSize = 16;
VULKAN_HPP_CONSTEXPR_INLINE uint32_t H265MaxLongTermPics = 16;
VULKAN_HPP_CONSTEXPR_INLINE uint32_t H265MaxLongTermRefPicsSps = 32;
VULKAN_HPP_CONSTEXPR_INLINE uint32_t H265MaxNumListRef = 15;
VULKAN_HPP_CONSTEXPR_INLINE uint32_t H265MaxShortTermRefPicSets = 64;
VULKAN_HPP_CONSTEXPR_INLINE uint8_t H265NoReferencePicture = 0xFF;
VULKAN_HPP_CONSTEXPR_INLINE uint32_t H265PredictorPaletteComponentsListSize = 3;
VULKAN_HPP_CONSTEXPR_INLINE uint32_t H265PredictorPaletteCompEntriesListSize = 128;
VULKAN_HPP_CONSTEXPR_INLINE uint32_t H265ScalingList16X16NumElements = 64;
VULKAN_HPP_CONSTEXPR_INLINE uint32_t H265ScalingList16X16NumLists = 6;
VULKAN_HPP_CONSTEXPR_INLINE uint32_t H265ScalingList32X32NumElements = 64;
VULKAN_HPP_CONSTEXPR_INLINE uint32_t H265ScalingList32X32NumLists = 2;
VULKAN_HPP_CONSTEXPR_INLINE uint32_t H265ScalingList4X4NumElements = 16;
VULKAN_HPP_CONSTEXPR_INLINE uint32_t H265ScalingList4X4NumLists = 6;
VULKAN_HPP_CONSTEXPR_INLINE uint32_t H265ScalingList8X8NumElements = 64;
VULKAN_HPP_CONSTEXPR_INLINE uint32_t H265ScalingList8X8NumLists = 6;
VULKAN_HPP_CONSTEXPR_INLINE uint32_t H265SublayersListSize = 7;
#endif
#if defined( VULKAN_VIDEO_CODEC_H265STD_DECODE_H_ )
//=== vulkan_video_codec_h265std_decode ===
VULKAN_HPP_CONSTEXPR_INLINE uint32_t DecodeH265RefPicSetListSize = 8;
#endif
#if defined( VULKAN_VIDEO_CODEC_VP9STD_H_ )
//=== vulkan_video_codec_vp9std ===
VULKAN_HPP_CONSTEXPR_INLINE uint32_t Vp9LoopFilterAdjustments = 2;
VULKAN_HPP_CONSTEXPR_INLINE uint32_t Vp9MaxRefFrames = 4;
VULKAN_HPP_CONSTEXPR_INLINE uint32_t Vp9MaxSegmentationPredProb = 3;
VULKAN_HPP_CONSTEXPR_INLINE uint32_t Vp9MaxSegmentationTreeProbs = 7;
VULKAN_HPP_CONSTEXPR_INLINE uint32_t Vp9MaxSegments = 8;
VULKAN_HPP_CONSTEXPR_INLINE uint32_t Vp9NumRefFrames = 8;
VULKAN_HPP_CONSTEXPR_INLINE uint32_t Vp9RefsPerFrame = 3;
VULKAN_HPP_CONSTEXPR_INLINE uint32_t Vp9SegLvlMax = 4;
#endif
#if defined( VULKAN_VIDEO_CODEC_AV1STD_H_ )
//=== vulkan_video_codec_av1std ===
VULKAN_HPP_CONSTEXPR_INLINE uint32_t Av1GlobalMotionParams = 6;
VULKAN_HPP_CONSTEXPR_INLINE uint32_t Av1LoopFilterAdjustments = 2;
VULKAN_HPP_CONSTEXPR_INLINE uint32_t Av1MaxCdefFilterStrengths = 8;
VULKAN_HPP_CONSTEXPR_INLINE uint32_t Av1MaxLoopFilterStrengths = 4;
VULKAN_HPP_CONSTEXPR_INLINE uint32_t Av1MaxNumCbPoints = 10;
VULKAN_HPP_CONSTEXPR_INLINE uint32_t Av1MaxNumCrPoints = 10;
VULKAN_HPP_CONSTEXPR_INLINE uint32_t Av1MaxNumPlanes = 3;
VULKAN_HPP_CONSTEXPR_INLINE uint32_t Av1MaxNumPosChroma = 25;
VULKAN_HPP_CONSTEXPR_INLINE uint32_t Av1MaxNumPosLuma = 24;
VULKAN_HPP_CONSTEXPR_INLINE uint32_t Av1MaxNumYPoints = 14;
VULKAN_HPP_CONSTEXPR_INLINE uint32_t Av1MaxSegments = 8;
VULKAN_HPP_CONSTEXPR_INLINE uint32_t Av1MaxTileCols = 64;
VULKAN_HPP_CONSTEXPR_INLINE uint32_t Av1MaxTileRows = 64;
VULKAN_HPP_CONSTEXPR_INLINE uint32_t Av1NumRefFrames = 8;
VULKAN_HPP_CONSTEXPR_INLINE uint8_t Av1PrimaryRefNone = 7;
VULKAN_HPP_CONSTEXPR_INLINE uint32_t Av1RefsPerFrame = 7;
VULKAN_HPP_CONSTEXPR_INLINE uint32_t Av1SegLvlMax = 8;
VULKAN_HPP_CONSTEXPR_INLINE uint8_t Av1SelectIntegerMv = 2;
VULKAN_HPP_CONSTEXPR_INLINE uint32_t Av1SelectScreenContentTools = 2;
VULKAN_HPP_CONSTEXPR_INLINE uint32_t Av1SkipModeFrames = 2;
VULKAN_HPP_CONSTEXPR_INLINE uint32_t Av1TotalRefsPerFrame = 8;
#endif
//=============
//=== ENUMs ===
@@ -615,17 +734,17 @@ namespace VULKAN_HPP_NAMESPACE
}
public:
uint8_t cpb_cnt_minus1 = {};
uint8_t bit_rate_scale = {};
uint8_t cpb_size_scale = {};
uint8_t reserved1 = {};
VULKAN_HPP_NAMESPACE::ArrayWrapper1D<uint32_t, STD_VIDEO_H264_CPB_CNT_LIST_SIZE> bit_rate_value_minus1 = {};
VULKAN_HPP_NAMESPACE::ArrayWrapper1D<uint32_t, STD_VIDEO_H264_CPB_CNT_LIST_SIZE> cpb_size_value_minus1 = {};
VULKAN_HPP_NAMESPACE::ArrayWrapper1D<uint8_t, STD_VIDEO_H264_CPB_CNT_LIST_SIZE> cbr_flag = {};
uint32_t initial_cpb_removal_delay_length_minus1 = {};
uint32_t cpb_removal_delay_length_minus1 = {};
uint32_t dpb_output_delay_length_minus1 = {};
uint32_t time_offset_length = {};
uint8_t cpb_cnt_minus1 = {};
uint8_t bit_rate_scale = {};
uint8_t cpb_size_scale = {};
uint8_t reserved1 = {};
ArrayWrapper1D<uint32_t, STD_VIDEO_H264_CPB_CNT_LIST_SIZE> bit_rate_value_minus1 = {};
ArrayWrapper1D<uint32_t, STD_VIDEO_H264_CPB_CNT_LIST_SIZE> cpb_size_value_minus1 = {};
ArrayWrapper1D<uint8_t, STD_VIDEO_H264_CPB_CNT_LIST_SIZE> cbr_flag = {};
uint32_t initial_cpb_removal_delay_length_minus1 = {};
uint32_t cpb_removal_delay_length_minus1 = {};
uint32_t dpb_output_delay_length_minus1 = {};
uint32_t time_offset_length = {};
};
struct H264SequenceParameterSetVui
@@ -685,7 +804,7 @@ namespace VULKAN_HPP_NAMESPACE
uint8_t chroma_sample_loc_type_top_field = {};
uint8_t chroma_sample_loc_type_bottom_field = {};
uint32_t reserved1 = {};
const VULKAN_HPP_NAMESPACE::VULKAN_HPP_VIDEO_NAMESPACE::H264HrdParameters * pHrdParameters = {};
VULKAN_HPP_NAMESPACE::VULKAN_HPP_VIDEO_NAMESPACE::H264HrdParameters const * pHrdParameters = {};
};
struct H264SpsFlags
@@ -785,12 +904,10 @@ namespace VULKAN_HPP_NAMESPACE
}
public:
uint16_t scaling_list_present_mask = {};
uint16_t use_default_scaling_matrix_mask = {};
VULKAN_HPP_NAMESPACE::ArrayWrapper2D<uint8_t, STD_VIDEO_H264_SCALING_LIST_4X4_NUM_LISTS, STD_VIDEO_H264_SCALING_LIST_4X4_NUM_ELEMENTS>
ScalingList4x4 = {};
VULKAN_HPP_NAMESPACE::ArrayWrapper2D<uint8_t, STD_VIDEO_H264_SCALING_LIST_8X8_NUM_LISTS, STD_VIDEO_H264_SCALING_LIST_8X8_NUM_ELEMENTS>
ScalingList8x8 = {};
uint16_t scaling_list_present_mask = {};
uint16_t use_default_scaling_matrix_mask = {};
ArrayWrapper2D<uint8_t, STD_VIDEO_H264_SCALING_LIST_4X4_NUM_LISTS, STD_VIDEO_H264_SCALING_LIST_4X4_NUM_ELEMENTS> ScalingList4x4 = {};
ArrayWrapper2D<uint8_t, STD_VIDEO_H264_SCALING_LIST_8X8_NUM_LISTS, STD_VIDEO_H264_SCALING_LIST_8X8_NUM_ELEMENTS> ScalingList8x8 = {};
};
struct H264SequenceParameterSet
@@ -864,9 +981,9 @@ namespace VULKAN_HPP_NAMESPACE
uint32_t frame_crop_top_offset = {};
uint32_t frame_crop_bottom_offset = {};
uint32_t reserved2 = {};
const int32_t * pOffsetForRefFrame = {};
const VULKAN_HPP_NAMESPACE::VULKAN_HPP_VIDEO_NAMESPACE::H264ScalingLists * pScalingLists = {};
const VULKAN_HPP_NAMESPACE::VULKAN_HPP_VIDEO_NAMESPACE::H264SequenceParameterSetVui * pSequenceParameterSetVui = {};
int32_t const * pOffsetForRefFrame = {};
VULKAN_HPP_NAMESPACE::VULKAN_HPP_VIDEO_NAMESPACE::H264ScalingLists const * pScalingLists = {};
VULKAN_HPP_NAMESPACE::VULKAN_HPP_VIDEO_NAMESPACE::H264SequenceParameterSetVui const * pSequenceParameterSetVui = {};
};
struct H264PpsFlags
@@ -969,7 +1086,7 @@ namespace VULKAN_HPP_NAMESPACE
int8_t pic_init_qs_minus26 = {};
int8_t chroma_qp_index_offset = {};
int8_t second_chroma_qp_index_offset = {};
const VULKAN_HPP_NAMESPACE::VULKAN_HPP_VIDEO_NAMESPACE::H264ScalingLists * pScalingLists = {};
VULKAN_HPP_NAMESPACE::VULKAN_HPP_VIDEO_NAMESPACE::H264ScalingLists const * pScalingLists = {};
};
#endif
@@ -1058,14 +1175,14 @@ namespace VULKAN_HPP_NAMESPACE
}
public:
VULKAN_HPP_NAMESPACE::VULKAN_HPP_VIDEO_NAMESPACE::DecodeH264PictureInfoFlags flags = {};
uint8_t seq_parameter_set_id = {};
uint8_t pic_parameter_set_id = {};
uint8_t reserved1 = {};
uint8_t reserved2 = {};
uint16_t frame_num = {};
uint16_t idr_pic_id = {};
VULKAN_HPP_NAMESPACE::ArrayWrapper1D<int32_t, STD_VIDEO_DECODE_H264_FIELD_ORDER_COUNT_LIST_SIZE> PicOrderCnt = {};
VULKAN_HPP_NAMESPACE::VULKAN_HPP_VIDEO_NAMESPACE::DecodeH264PictureInfoFlags flags = {};
uint8_t seq_parameter_set_id = {};
uint8_t pic_parameter_set_id = {};
uint8_t reserved1 = {};
uint8_t reserved2 = {};
uint16_t frame_num = {};
uint16_t idr_pic_id = {};
ArrayWrapper1D<int32_t, STD_VIDEO_DECODE_H264_FIELD_ORDER_COUNT_LIST_SIZE> PicOrderCnt = {};
};
struct DecodeH264ReferenceInfoFlags
@@ -1145,10 +1262,10 @@ namespace VULKAN_HPP_NAMESPACE
}
public:
VULKAN_HPP_NAMESPACE::VULKAN_HPP_VIDEO_NAMESPACE::DecodeH264ReferenceInfoFlags flags = {};
uint16_t FrameNum = {};
uint16_t reserved = {};
VULKAN_HPP_NAMESPACE::ArrayWrapper1D<int32_t, STD_VIDEO_DECODE_H264_FIELD_ORDER_COUNT_LIST_SIZE> PicOrderCnt = {};
VULKAN_HPP_NAMESPACE::VULKAN_HPP_VIDEO_NAMESPACE::DecodeH264ReferenceInfoFlags flags = {};
uint16_t FrameNum = {};
uint16_t reserved = {};
ArrayWrapper1D<int32_t, STD_VIDEO_DECODE_H264_FIELD_ORDER_COUNT_LIST_SIZE> PicOrderCnt = {};
};
#endif
@@ -1236,17 +1353,17 @@ namespace VULKAN_HPP_NAMESPACE
}
public:
VULKAN_HPP_NAMESPACE::VULKAN_HPP_VIDEO_NAMESPACE::EncodeH264WeightTableFlags flags = {};
uint8_t luma_log2_weight_denom = {};
uint8_t chroma_log2_weight_denom = {};
VULKAN_HPP_NAMESPACE::ArrayWrapper1D<int8_t, STD_VIDEO_H264_MAX_NUM_LIST_REF> luma_weight_l0 = {};
VULKAN_HPP_NAMESPACE::ArrayWrapper1D<int8_t, STD_VIDEO_H264_MAX_NUM_LIST_REF> luma_offset_l0 = {};
VULKAN_HPP_NAMESPACE::ArrayWrapper2D<int8_t, STD_VIDEO_H264_MAX_NUM_LIST_REF, STD_VIDEO_H264_MAX_CHROMA_PLANES> chroma_weight_l0 = {};
VULKAN_HPP_NAMESPACE::ArrayWrapper2D<int8_t, STD_VIDEO_H264_MAX_NUM_LIST_REF, STD_VIDEO_H264_MAX_CHROMA_PLANES> chroma_offset_l0 = {};
VULKAN_HPP_NAMESPACE::ArrayWrapper1D<int8_t, STD_VIDEO_H264_MAX_NUM_LIST_REF> luma_weight_l1 = {};
VULKAN_HPP_NAMESPACE::ArrayWrapper1D<int8_t, STD_VIDEO_H264_MAX_NUM_LIST_REF> luma_offset_l1 = {};
VULKAN_HPP_NAMESPACE::ArrayWrapper2D<int8_t, STD_VIDEO_H264_MAX_NUM_LIST_REF, STD_VIDEO_H264_MAX_CHROMA_PLANES> chroma_weight_l1 = {};
VULKAN_HPP_NAMESPACE::ArrayWrapper2D<int8_t, STD_VIDEO_H264_MAX_NUM_LIST_REF, STD_VIDEO_H264_MAX_CHROMA_PLANES> chroma_offset_l1 = {};
VULKAN_HPP_NAMESPACE::VULKAN_HPP_VIDEO_NAMESPACE::EncodeH264WeightTableFlags flags = {};
uint8_t luma_log2_weight_denom = {};
uint8_t chroma_log2_weight_denom = {};
ArrayWrapper1D<int8_t, STD_VIDEO_H264_MAX_NUM_LIST_REF> luma_weight_l0 = {};
ArrayWrapper1D<int8_t, STD_VIDEO_H264_MAX_NUM_LIST_REF> luma_offset_l0 = {};
ArrayWrapper2D<int8_t, STD_VIDEO_H264_MAX_NUM_LIST_REF, STD_VIDEO_H264_MAX_CHROMA_PLANES> chroma_weight_l0 = {};
ArrayWrapper2D<int8_t, STD_VIDEO_H264_MAX_NUM_LIST_REF, STD_VIDEO_H264_MAX_CHROMA_PLANES> chroma_offset_l0 = {};
ArrayWrapper1D<int8_t, STD_VIDEO_H264_MAX_NUM_LIST_REF> luma_weight_l1 = {};
ArrayWrapper1D<int8_t, STD_VIDEO_H264_MAX_NUM_LIST_REF> luma_offset_l1 = {};
ArrayWrapper2D<int8_t, STD_VIDEO_H264_MAX_NUM_LIST_REF, STD_VIDEO_H264_MAX_CHROMA_PLANES> chroma_weight_l1 = {};
ArrayWrapper2D<int8_t, STD_VIDEO_H264_MAX_NUM_LIST_REF, STD_VIDEO_H264_MAX_CHROMA_PLANES> chroma_offset_l1 = {};
};
struct EncodeH264SliceHeaderFlags
@@ -1545,15 +1662,15 @@ namespace VULKAN_HPP_NAMESPACE
VULKAN_HPP_NAMESPACE::VULKAN_HPP_VIDEO_NAMESPACE::EncodeH264ReferenceListsInfoFlags flags = {};
uint8_t num_ref_idx_l0_active_minus1 = {};
uint8_t num_ref_idx_l1_active_minus1 = {};
VULKAN_HPP_NAMESPACE::ArrayWrapper1D<uint8_t, STD_VIDEO_H264_MAX_NUM_LIST_REF> RefPicList0 = {};
VULKAN_HPP_NAMESPACE::ArrayWrapper1D<uint8_t, STD_VIDEO_H264_MAX_NUM_LIST_REF> RefPicList1 = {};
ArrayWrapper1D<uint8_t, STD_VIDEO_H264_MAX_NUM_LIST_REF> RefPicList0 = {};
ArrayWrapper1D<uint8_t, STD_VIDEO_H264_MAX_NUM_LIST_REF> RefPicList1 = {};
uint8_t refList0ModOpCount = {};
uint8_t refList1ModOpCount = {};
uint8_t refPicMarkingOpCount = {};
VULKAN_HPP_NAMESPACE::ArrayWrapper1D<uint8_t, 7> reserved1 = {};
const VULKAN_HPP_NAMESPACE::VULKAN_HPP_VIDEO_NAMESPACE::EncodeH264RefListModEntry * pRefList0ModOperations = {};
const VULKAN_HPP_NAMESPACE::VULKAN_HPP_VIDEO_NAMESPACE::EncodeH264RefListModEntry * pRefList1ModOperations = {};
const VULKAN_HPP_NAMESPACE::VULKAN_HPP_VIDEO_NAMESPACE::EncodeH264RefPicMarkingEntry * pRefPicMarkingOperations = {};
ArrayWrapper1D<uint8_t, 7> reserved1 = {};
VULKAN_HPP_NAMESPACE::VULKAN_HPP_VIDEO_NAMESPACE::EncodeH264RefListModEntry const * pRefList0ModOperations = {};
VULKAN_HPP_NAMESPACE::VULKAN_HPP_VIDEO_NAMESPACE::EncodeH264RefListModEntry const * pRefList1ModOperations = {};
VULKAN_HPP_NAMESPACE::VULKAN_HPP_VIDEO_NAMESPACE::EncodeH264RefPicMarkingEntry const * pRefPicMarkingOperations = {};
};
struct EncodeH264PictureInfo
@@ -1602,8 +1719,8 @@ namespace VULKAN_HPP_NAMESPACE
uint32_t frame_num = {};
int32_t PicOrderCnt = {};
uint8_t temporal_id = {};
VULKAN_HPP_NAMESPACE::ArrayWrapper1D<uint8_t, 3> reserved1 = {};
const VULKAN_HPP_NAMESPACE::VULKAN_HPP_VIDEO_NAMESPACE::EncodeH264ReferenceListsInfo * pRefLists = {};
ArrayWrapper1D<uint8_t, 3> reserved1 = {};
VULKAN_HPP_NAMESPACE::VULKAN_HPP_VIDEO_NAMESPACE::EncodeH264ReferenceListsInfo const * pRefLists = {};
};
struct EncodeH264ReferenceInfo
@@ -1701,7 +1818,7 @@ namespace VULKAN_HPP_NAMESPACE
VULKAN_HPP_NAMESPACE::VULKAN_HPP_VIDEO_NAMESPACE::H264CabacInitIdc::e0;
VULKAN_HPP_NAMESPACE::VULKAN_HPP_VIDEO_NAMESPACE::H264DisableDeblockingFilterIdc disable_deblocking_filter_idc =
VULKAN_HPP_NAMESPACE::VULKAN_HPP_VIDEO_NAMESPACE::H264DisableDeblockingFilterIdc::eDisabled;
const VULKAN_HPP_NAMESPACE::VULKAN_HPP_VIDEO_NAMESPACE::EncodeH264WeightTable * pWeightTable = {};
VULKAN_HPP_NAMESPACE::VULKAN_HPP_VIDEO_NAMESPACE::EncodeH264WeightTable const * pWeightTable = {};
};
#endif
@@ -1744,9 +1861,9 @@ namespace VULKAN_HPP_NAMESPACE
}
public:
VULKAN_HPP_NAMESPACE::ArrayWrapper1D<uint32_t, STD_VIDEO_H265_SUBLAYERS_LIST_SIZE> max_latency_increase_plus1 = {};
VULKAN_HPP_NAMESPACE::ArrayWrapper1D<uint8_t, STD_VIDEO_H265_SUBLAYERS_LIST_SIZE> max_dec_pic_buffering_minus1 = {};
VULKAN_HPP_NAMESPACE::ArrayWrapper1D<uint8_t, STD_VIDEO_H265_SUBLAYERS_LIST_SIZE> max_num_reorder_pics = {};
ArrayWrapper1D<uint32_t, STD_VIDEO_H265_SUBLAYERS_LIST_SIZE> max_latency_increase_plus1 = {};
ArrayWrapper1D<uint8_t, STD_VIDEO_H265_SUBLAYERS_LIST_SIZE> max_dec_pic_buffering_minus1 = {};
ArrayWrapper1D<uint8_t, STD_VIDEO_H265_SUBLAYERS_LIST_SIZE> max_num_reorder_pics = {};
};
struct H265SubLayerHrdParameters
@@ -1786,11 +1903,11 @@ namespace VULKAN_HPP_NAMESPACE
}
public:
VULKAN_HPP_NAMESPACE::ArrayWrapper1D<uint32_t, STD_VIDEO_H265_CPB_CNT_LIST_SIZE> bit_rate_value_minus1 = {};
VULKAN_HPP_NAMESPACE::ArrayWrapper1D<uint32_t, STD_VIDEO_H265_CPB_CNT_LIST_SIZE> cpb_size_value_minus1 = {};
VULKAN_HPP_NAMESPACE::ArrayWrapper1D<uint32_t, STD_VIDEO_H265_CPB_CNT_LIST_SIZE> cpb_size_du_value_minus1 = {};
VULKAN_HPP_NAMESPACE::ArrayWrapper1D<uint32_t, STD_VIDEO_H265_CPB_CNT_LIST_SIZE> bit_rate_du_value_minus1 = {};
uint32_t cbr_flag = {};
ArrayWrapper1D<uint32_t, STD_VIDEO_H265_CPB_CNT_LIST_SIZE> bit_rate_value_minus1 = {};
ArrayWrapper1D<uint32_t, STD_VIDEO_H265_CPB_CNT_LIST_SIZE> cpb_size_value_minus1 = {};
ArrayWrapper1D<uint32_t, STD_VIDEO_H265_CPB_CNT_LIST_SIZE> cpb_size_du_value_minus1 = {};
ArrayWrapper1D<uint32_t, STD_VIDEO_H265_CPB_CNT_LIST_SIZE> bit_rate_du_value_minus1 = {};
uint32_t cbr_flag = {};
};
struct H265HrdFlags
@@ -1895,11 +2012,11 @@ namespace VULKAN_HPP_NAMESPACE
uint8_t initial_cpb_removal_delay_length_minus1 = {};
uint8_t au_cpb_removal_delay_length_minus1 = {};
uint8_t dpb_output_delay_length_minus1 = {};
VULKAN_HPP_NAMESPACE::ArrayWrapper1D<uint8_t, STD_VIDEO_H265_SUBLAYERS_LIST_SIZE> cpb_cnt_minus1 = {};
VULKAN_HPP_NAMESPACE::ArrayWrapper1D<uint16_t, STD_VIDEO_H265_SUBLAYERS_LIST_SIZE> elemental_duration_in_tc_minus1 = {};
VULKAN_HPP_NAMESPACE::ArrayWrapper1D<uint16_t, 3> reserved = {};
const VULKAN_HPP_NAMESPACE::VULKAN_HPP_VIDEO_NAMESPACE::H265SubLayerHrdParameters * pSubLayerHrdParametersNal = {};
const VULKAN_HPP_NAMESPACE::VULKAN_HPP_VIDEO_NAMESPACE::H265SubLayerHrdParameters * pSubLayerHrdParametersVcl = {};
ArrayWrapper1D<uint8_t, STD_VIDEO_H265_SUBLAYERS_LIST_SIZE> cpb_cnt_minus1 = {};
ArrayWrapper1D<uint16_t, STD_VIDEO_H265_SUBLAYERS_LIST_SIZE> elemental_duration_in_tc_minus1 = {};
ArrayWrapper1D<uint16_t, 3> reserved = {};
VULKAN_HPP_NAMESPACE::VULKAN_HPP_VIDEO_NAMESPACE::H265SubLayerHrdParameters const * pSubLayerHrdParametersNal = {};
VULKAN_HPP_NAMESPACE::VULKAN_HPP_VIDEO_NAMESPACE::H265SubLayerHrdParameters const * pSubLayerHrdParametersVcl = {};
};
struct H265VpsFlags
@@ -2080,9 +2197,9 @@ namespace VULKAN_HPP_NAMESPACE
uint32_t vps_time_scale = {};
uint32_t vps_num_ticks_poc_diff_one_minus1 = {};
uint32_t reserved3 = {};
const VULKAN_HPP_NAMESPACE::VULKAN_HPP_VIDEO_NAMESPACE::H265DecPicBufMgr * pDecPicBufMgr = {};
const VULKAN_HPP_NAMESPACE::VULKAN_HPP_VIDEO_NAMESPACE::H265HrdParameters * pHrdParameters = {};
const VULKAN_HPP_NAMESPACE::VULKAN_HPP_VIDEO_NAMESPACE::H265ProfileTierLevel * pProfileTierLevel = {};
VULKAN_HPP_NAMESPACE::VULKAN_HPP_VIDEO_NAMESPACE::H265DecPicBufMgr const * pDecPicBufMgr = {};
VULKAN_HPP_NAMESPACE::VULKAN_HPP_VIDEO_NAMESPACE::H265HrdParameters const * pHrdParameters = {};
VULKAN_HPP_NAMESPACE::VULKAN_HPP_VIDEO_NAMESPACE::H265ProfileTierLevel const * pProfileTierLevel = {};
};
struct H265ScalingLists
@@ -2122,16 +2239,12 @@ namespace VULKAN_HPP_NAMESPACE
}
public:
VULKAN_HPP_NAMESPACE::ArrayWrapper2D<uint8_t, STD_VIDEO_H265_SCALING_LIST_4X4_NUM_LISTS, STD_VIDEO_H265_SCALING_LIST_4X4_NUM_ELEMENTS>
ScalingList4x4 = {};
VULKAN_HPP_NAMESPACE::ArrayWrapper2D<uint8_t, STD_VIDEO_H265_SCALING_LIST_8X8_NUM_LISTS, STD_VIDEO_H265_SCALING_LIST_8X8_NUM_ELEMENTS>
ScalingList8x8 = {};
VULKAN_HPP_NAMESPACE::ArrayWrapper2D<uint8_t, STD_VIDEO_H265_SCALING_LIST_16X16_NUM_LISTS, STD_VIDEO_H265_SCALING_LIST_16X16_NUM_ELEMENTS>
ScalingList16x16 = {};
VULKAN_HPP_NAMESPACE::ArrayWrapper2D<uint8_t, STD_VIDEO_H265_SCALING_LIST_32X32_NUM_LISTS, STD_VIDEO_H265_SCALING_LIST_32X32_NUM_ELEMENTS>
ScalingList32x32 = {};
VULKAN_HPP_NAMESPACE::ArrayWrapper1D<uint8_t, STD_VIDEO_H265_SCALING_LIST_16X16_NUM_LISTS> ScalingListDCCoef16x16 = {};
VULKAN_HPP_NAMESPACE::ArrayWrapper1D<uint8_t, STD_VIDEO_H265_SCALING_LIST_32X32_NUM_LISTS> ScalingListDCCoef32x32 = {};
ArrayWrapper2D<uint8_t, STD_VIDEO_H265_SCALING_LIST_4X4_NUM_LISTS, STD_VIDEO_H265_SCALING_LIST_4X4_NUM_ELEMENTS> ScalingList4x4 = {};
ArrayWrapper2D<uint8_t, STD_VIDEO_H265_SCALING_LIST_8X8_NUM_LISTS, STD_VIDEO_H265_SCALING_LIST_8X8_NUM_ELEMENTS> ScalingList8x8 = {};
ArrayWrapper2D<uint8_t, STD_VIDEO_H265_SCALING_LIST_16X16_NUM_LISTS, STD_VIDEO_H265_SCALING_LIST_16X16_NUM_ELEMENTS> ScalingList16x16 = {};
ArrayWrapper2D<uint8_t, STD_VIDEO_H265_SCALING_LIST_32X32_NUM_LISTS, STD_VIDEO_H265_SCALING_LIST_32X32_NUM_ELEMENTS> ScalingList32x32 = {};
ArrayWrapper1D<uint8_t, STD_VIDEO_H265_SCALING_LIST_16X16_NUM_LISTS> ScalingListDCCoef16x16 = {};
ArrayWrapper1D<uint8_t, STD_VIDEO_H265_SCALING_LIST_32X32_NUM_LISTS> ScalingListDCCoef32x32 = {};
};
struct H265SpsVuiFlags
@@ -2273,7 +2386,7 @@ namespace VULKAN_HPP_NAMESPACE
uint8_t max_bits_per_min_cu_denom = {};
uint8_t log2_max_mv_length_horizontal = {};
uint8_t log2_max_mv_length_vertical = {};
const VULKAN_HPP_NAMESPACE::VULKAN_HPP_VIDEO_NAMESPACE::H265HrdParameters * pHrdParameters = {};
VULKAN_HPP_NAMESPACE::VULKAN_HPP_VIDEO_NAMESPACE::H265HrdParameters const * pHrdParameters = {};
};
struct H265PredictorPaletteEntries
@@ -2311,9 +2424,8 @@ namespace VULKAN_HPP_NAMESPACE
}
public:
VULKAN_HPP_NAMESPACE::
ArrayWrapper2D<uint16_t, STD_VIDEO_H265_PREDICTOR_PALETTE_COMPONENTS_LIST_SIZE, STD_VIDEO_H265_PREDICTOR_PALETTE_COMP_ENTRIES_LIST_SIZE>
PredictorPaletteEntries = {};
ArrayWrapper2D<uint16_t, STD_VIDEO_H265_PREDICTOR_PALETTE_COMPONENTS_LIST_SIZE, STD_VIDEO_H265_PREDICTOR_PALETTE_COMP_ENTRIES_LIST_SIZE>
PredictorPaletteEntries = {};
};
struct H265SpsFlags
@@ -2496,8 +2608,8 @@ namespace VULKAN_HPP_NAMESPACE
uint8_t reserved3 = {};
uint8_t num_negative_pics = {};
uint8_t num_positive_pics = {};
VULKAN_HPP_NAMESPACE::ArrayWrapper1D<uint16_t, STD_VIDEO_H265_MAX_DPB_SIZE> delta_poc_s0_minus1 = {};
VULKAN_HPP_NAMESPACE::ArrayWrapper1D<uint16_t, STD_VIDEO_H265_MAX_DPB_SIZE> delta_poc_s1_minus1 = {};
ArrayWrapper1D<uint16_t, STD_VIDEO_H265_MAX_DPB_SIZE> delta_poc_s0_minus1 = {};
ArrayWrapper1D<uint16_t, STD_VIDEO_H265_MAX_DPB_SIZE> delta_poc_s1_minus1 = {};
};
struct H265LongTermRefPicsSps
@@ -2535,8 +2647,8 @@ namespace VULKAN_HPP_NAMESPACE
}
public:
uint32_t used_by_curr_pic_lt_sps_flag = {};
VULKAN_HPP_NAMESPACE::ArrayWrapper1D<uint32_t, STD_VIDEO_H265_MAX_LONG_TERM_REF_PICS_SPS> lt_ref_pic_poc_lsb_sps = {};
uint32_t used_by_curr_pic_lt_sps_flag = {};
ArrayWrapper1D<uint32_t, STD_VIDEO_H265_MAX_LONG_TERM_REF_PICS_SPS> lt_ref_pic_poc_lsb_sps = {};
};
struct H265SequenceParameterSet
@@ -2631,13 +2743,13 @@ namespace VULKAN_HPP_NAMESPACE
uint32_t conf_win_right_offset = {};
uint32_t conf_win_top_offset = {};
uint32_t conf_win_bottom_offset = {};
const VULKAN_HPP_NAMESPACE::VULKAN_HPP_VIDEO_NAMESPACE::H265ProfileTierLevel * pProfileTierLevel = {};
const VULKAN_HPP_NAMESPACE::VULKAN_HPP_VIDEO_NAMESPACE::H265DecPicBufMgr * pDecPicBufMgr = {};
const VULKAN_HPP_NAMESPACE::VULKAN_HPP_VIDEO_NAMESPACE::H265ScalingLists * pScalingLists = {};
const VULKAN_HPP_NAMESPACE::VULKAN_HPP_VIDEO_NAMESPACE::H265ShortTermRefPicSet * pShortTermRefPicSet = {};
const VULKAN_HPP_NAMESPACE::VULKAN_HPP_VIDEO_NAMESPACE::H265LongTermRefPicsSps * pLongTermRefPicsSps = {};
const VULKAN_HPP_NAMESPACE::VULKAN_HPP_VIDEO_NAMESPACE::H265SequenceParameterSetVui * pSequenceParameterSetVui = {};
const VULKAN_HPP_NAMESPACE::VULKAN_HPP_VIDEO_NAMESPACE::H265PredictorPaletteEntries * pPredictorPaletteEntries = {};
VULKAN_HPP_NAMESPACE::VULKAN_HPP_VIDEO_NAMESPACE::H265ProfileTierLevel const * pProfileTierLevel = {};
VULKAN_HPP_NAMESPACE::VULKAN_HPP_VIDEO_NAMESPACE::H265DecPicBufMgr const * pDecPicBufMgr = {};
VULKAN_HPP_NAMESPACE::VULKAN_HPP_VIDEO_NAMESPACE::H265ScalingLists const * pScalingLists = {};
VULKAN_HPP_NAMESPACE::VULKAN_HPP_VIDEO_NAMESPACE::H265ShortTermRefPicSet const * pShortTermRefPicSet = {};
VULKAN_HPP_NAMESPACE::VULKAN_HPP_VIDEO_NAMESPACE::H265LongTermRefPicsSps const * pLongTermRefPicsSps = {};
VULKAN_HPP_NAMESPACE::VULKAN_HPP_VIDEO_NAMESPACE::H265SequenceParameterSetVui const * pSequenceParameterSetVui = {};
VULKAN_HPP_NAMESPACE::VULKAN_HPP_VIDEO_NAMESPACE::H265PredictorPaletteEntries const * pPredictorPaletteEntries = {};
};
struct H265PpsFlags
@@ -2785,42 +2897,42 @@ namespace VULKAN_HPP_NAMESPACE
}
public:
VULKAN_HPP_NAMESPACE::VULKAN_HPP_VIDEO_NAMESPACE::H265PpsFlags flags = {};
uint8_t pps_pic_parameter_set_id = {};
uint8_t pps_seq_parameter_set_id = {};
uint8_t sps_video_parameter_set_id = {};
uint8_t num_extra_slice_header_bits = {};
uint8_t num_ref_idx_l0_default_active_minus1 = {};
uint8_t num_ref_idx_l1_default_active_minus1 = {};
int8_t init_qp_minus26 = {};
uint8_t diff_cu_qp_delta_depth = {};
int8_t pps_cb_qp_offset = {};
int8_t pps_cr_qp_offset = {};
int8_t pps_beta_offset_div2 = {};
int8_t pps_tc_offset_div2 = {};
uint8_t log2_parallel_merge_level_minus2 = {};
uint8_t log2_max_transform_skip_block_size_minus2 = {};
uint8_t diff_cu_chroma_qp_offset_depth = {};
uint8_t chroma_qp_offset_list_len_minus1 = {};
VULKAN_HPP_NAMESPACE::ArrayWrapper1D<int8_t, STD_VIDEO_H265_CHROMA_QP_OFFSET_LIST_SIZE> cb_qp_offset_list = {};
VULKAN_HPP_NAMESPACE::ArrayWrapper1D<int8_t, STD_VIDEO_H265_CHROMA_QP_OFFSET_LIST_SIZE> cr_qp_offset_list = {};
uint8_t log2_sao_offset_scale_luma = {};
uint8_t log2_sao_offset_scale_chroma = {};
int8_t pps_act_y_qp_offset_plus5 = {};
int8_t pps_act_cb_qp_offset_plus5 = {};
int8_t pps_act_cr_qp_offset_plus3 = {};
uint8_t pps_num_palette_predictor_initializers = {};
uint8_t luma_bit_depth_entry_minus8 = {};
uint8_t chroma_bit_depth_entry_minus8 = {};
uint8_t num_tile_columns_minus1 = {};
uint8_t num_tile_rows_minus1 = {};
uint8_t reserved1 = {};
uint8_t reserved2 = {};
VULKAN_HPP_NAMESPACE::ArrayWrapper1D<uint16_t, STD_VIDEO_H265_CHROMA_QP_OFFSET_TILE_COLS_LIST_SIZE> column_width_minus1 = {};
VULKAN_HPP_NAMESPACE::ArrayWrapper1D<uint16_t, STD_VIDEO_H265_CHROMA_QP_OFFSET_TILE_ROWS_LIST_SIZE> row_height_minus1 = {};
uint32_t reserved3 = {};
const VULKAN_HPP_NAMESPACE::VULKAN_HPP_VIDEO_NAMESPACE::H265ScalingLists * pScalingLists = {};
const VULKAN_HPP_NAMESPACE::VULKAN_HPP_VIDEO_NAMESPACE::H265PredictorPaletteEntries * pPredictorPaletteEntries = {};
VULKAN_HPP_NAMESPACE::VULKAN_HPP_VIDEO_NAMESPACE::H265PpsFlags flags = {};
uint8_t pps_pic_parameter_set_id = {};
uint8_t pps_seq_parameter_set_id = {};
uint8_t sps_video_parameter_set_id = {};
uint8_t num_extra_slice_header_bits = {};
uint8_t num_ref_idx_l0_default_active_minus1 = {};
uint8_t num_ref_idx_l1_default_active_minus1 = {};
int8_t init_qp_minus26 = {};
uint8_t diff_cu_qp_delta_depth = {};
int8_t pps_cb_qp_offset = {};
int8_t pps_cr_qp_offset = {};
int8_t pps_beta_offset_div2 = {};
int8_t pps_tc_offset_div2 = {};
uint8_t log2_parallel_merge_level_minus2 = {};
uint8_t log2_max_transform_skip_block_size_minus2 = {};
uint8_t diff_cu_chroma_qp_offset_depth = {};
uint8_t chroma_qp_offset_list_len_minus1 = {};
ArrayWrapper1D<int8_t, STD_VIDEO_H265_CHROMA_QP_OFFSET_LIST_SIZE> cb_qp_offset_list = {};
ArrayWrapper1D<int8_t, STD_VIDEO_H265_CHROMA_QP_OFFSET_LIST_SIZE> cr_qp_offset_list = {};
uint8_t log2_sao_offset_scale_luma = {};
uint8_t log2_sao_offset_scale_chroma = {};
int8_t pps_act_y_qp_offset_plus5 = {};
int8_t pps_act_cb_qp_offset_plus5 = {};
int8_t pps_act_cr_qp_offset_plus3 = {};
uint8_t pps_num_palette_predictor_initializers = {};
uint8_t luma_bit_depth_entry_minus8 = {};
uint8_t chroma_bit_depth_entry_minus8 = {};
uint8_t num_tile_columns_minus1 = {};
uint8_t num_tile_rows_minus1 = {};
uint8_t reserved1 = {};
uint8_t reserved2 = {};
ArrayWrapper1D<uint16_t, STD_VIDEO_H265_CHROMA_QP_OFFSET_TILE_COLS_LIST_SIZE> column_width_minus1 = {};
ArrayWrapper1D<uint16_t, STD_VIDEO_H265_CHROMA_QP_OFFSET_TILE_ROWS_LIST_SIZE> row_height_minus1 = {};
uint32_t reserved3 = {};
VULKAN_HPP_NAMESPACE::VULKAN_HPP_VIDEO_NAMESPACE::H265ScalingLists const * pScalingLists = {};
VULKAN_HPP_NAMESPACE::VULKAN_HPP_VIDEO_NAMESPACE::H265PredictorPaletteEntries const * pPredictorPaletteEntries = {};
};
#endif
@@ -2909,17 +3021,17 @@ namespace VULKAN_HPP_NAMESPACE
}
public:
VULKAN_HPP_NAMESPACE::VULKAN_HPP_VIDEO_NAMESPACE::DecodeH265PictureInfoFlags flags = {};
uint8_t sps_video_parameter_set_id = {};
uint8_t pps_seq_parameter_set_id = {};
uint8_t pps_pic_parameter_set_id = {};
uint8_t NumDeltaPocsOfRefRpsIdx = {};
int32_t PicOrderCntVal = {};
uint16_t NumBitsForSTRefPicSetInSlice = {};
uint16_t reserved = {};
VULKAN_HPP_NAMESPACE::ArrayWrapper1D<uint8_t, STD_VIDEO_DECODE_H265_REF_PIC_SET_LIST_SIZE> RefPicSetStCurrBefore = {};
VULKAN_HPP_NAMESPACE::ArrayWrapper1D<uint8_t, STD_VIDEO_DECODE_H265_REF_PIC_SET_LIST_SIZE> RefPicSetStCurrAfter = {};
VULKAN_HPP_NAMESPACE::ArrayWrapper1D<uint8_t, STD_VIDEO_DECODE_H265_REF_PIC_SET_LIST_SIZE> RefPicSetLtCurr = {};
VULKAN_HPP_NAMESPACE::VULKAN_HPP_VIDEO_NAMESPACE::DecodeH265PictureInfoFlags flags = {};
uint8_t sps_video_parameter_set_id = {};
uint8_t pps_seq_parameter_set_id = {};
uint8_t pps_pic_parameter_set_id = {};
uint8_t NumDeltaPocsOfRefRpsIdx = {};
int32_t PicOrderCntVal = {};
uint16_t NumBitsForSTRefPicSetInSlice = {};
uint16_t reserved = {};
ArrayWrapper1D<uint8_t, STD_VIDEO_DECODE_H265_REF_PIC_SET_LIST_SIZE> RefPicSetStCurrBefore = {};
ArrayWrapper1D<uint8_t, STD_VIDEO_DECODE_H265_REF_PIC_SET_LIST_SIZE> RefPicSetStCurrAfter = {};
ArrayWrapper1D<uint8_t, STD_VIDEO_DECODE_H265_REF_PIC_SET_LIST_SIZE> RefPicSetLtCurr = {};
};
struct DecodeH265ReferenceInfoFlags
@@ -3086,17 +3198,17 @@ namespace VULKAN_HPP_NAMESPACE
}
public:
VULKAN_HPP_NAMESPACE::VULKAN_HPP_VIDEO_NAMESPACE::EncodeH265WeightTableFlags flags = {};
uint8_t luma_log2_weight_denom = {};
int8_t delta_chroma_log2_weight_denom = {};
VULKAN_HPP_NAMESPACE::ArrayWrapper1D<int8_t, STD_VIDEO_H265_MAX_NUM_LIST_REF> delta_luma_weight_l0 = {};
VULKAN_HPP_NAMESPACE::ArrayWrapper1D<int8_t, STD_VIDEO_H265_MAX_NUM_LIST_REF> luma_offset_l0 = {};
VULKAN_HPP_NAMESPACE::ArrayWrapper2D<int8_t, STD_VIDEO_H265_MAX_NUM_LIST_REF, STD_VIDEO_H265_MAX_CHROMA_PLANES> delta_chroma_weight_l0 = {};
VULKAN_HPP_NAMESPACE::ArrayWrapper2D<int8_t, STD_VIDEO_H265_MAX_NUM_LIST_REF, STD_VIDEO_H265_MAX_CHROMA_PLANES> delta_chroma_offset_l0 = {};
VULKAN_HPP_NAMESPACE::ArrayWrapper1D<int8_t, STD_VIDEO_H265_MAX_NUM_LIST_REF> delta_luma_weight_l1 = {};
VULKAN_HPP_NAMESPACE::ArrayWrapper1D<int8_t, STD_VIDEO_H265_MAX_NUM_LIST_REF> luma_offset_l1 = {};
VULKAN_HPP_NAMESPACE::ArrayWrapper2D<int8_t, STD_VIDEO_H265_MAX_NUM_LIST_REF, STD_VIDEO_H265_MAX_CHROMA_PLANES> delta_chroma_weight_l1 = {};
VULKAN_HPP_NAMESPACE::ArrayWrapper2D<int8_t, STD_VIDEO_H265_MAX_NUM_LIST_REF, STD_VIDEO_H265_MAX_CHROMA_PLANES> delta_chroma_offset_l1 = {};
VULKAN_HPP_NAMESPACE::VULKAN_HPP_VIDEO_NAMESPACE::EncodeH265WeightTableFlags flags = {};
uint8_t luma_log2_weight_denom = {};
int8_t delta_chroma_log2_weight_denom = {};
ArrayWrapper1D<int8_t, STD_VIDEO_H265_MAX_NUM_LIST_REF> delta_luma_weight_l0 = {};
ArrayWrapper1D<int8_t, STD_VIDEO_H265_MAX_NUM_LIST_REF> luma_offset_l0 = {};
ArrayWrapper2D<int8_t, STD_VIDEO_H265_MAX_NUM_LIST_REF, STD_VIDEO_H265_MAX_CHROMA_PLANES> delta_chroma_weight_l0 = {};
ArrayWrapper2D<int8_t, STD_VIDEO_H265_MAX_NUM_LIST_REF, STD_VIDEO_H265_MAX_CHROMA_PLANES> delta_chroma_offset_l0 = {};
ArrayWrapper1D<int8_t, STD_VIDEO_H265_MAX_NUM_LIST_REF> delta_luma_weight_l1 = {};
ArrayWrapper1D<int8_t, STD_VIDEO_H265_MAX_NUM_LIST_REF> luma_offset_l1 = {};
ArrayWrapper2D<int8_t, STD_VIDEO_H265_MAX_NUM_LIST_REF, STD_VIDEO_H265_MAX_CHROMA_PLANES> delta_chroma_weight_l1 = {};
ArrayWrapper2D<int8_t, STD_VIDEO_H265_MAX_NUM_LIST_REF, STD_VIDEO_H265_MAX_CHROMA_PLANES> delta_chroma_offset_l1 = {};
};
struct EncodeH265SliceSegmentHeaderFlags
@@ -3212,7 +3324,7 @@ namespace VULKAN_HPP_NAMESPACE
int8_t slice_act_cr_qp_offset = {};
int8_t slice_qp_delta = {};
uint16_t reserved1 = {};
const VULKAN_HPP_NAMESPACE::VULKAN_HPP_VIDEO_NAMESPACE::EncodeH265WeightTable * pWeightTable = {};
VULKAN_HPP_NAMESPACE::VULKAN_HPP_VIDEO_NAMESPACE::EncodeH265WeightTable const * pWeightTable = {};
};
struct EncodeH265ReferenceListsInfoFlags
@@ -3296,10 +3408,10 @@ namespace VULKAN_HPP_NAMESPACE
VULKAN_HPP_NAMESPACE::VULKAN_HPP_VIDEO_NAMESPACE::EncodeH265ReferenceListsInfoFlags flags = {};
uint8_t num_ref_idx_l0_active_minus1 = {};
uint8_t num_ref_idx_l1_active_minus1 = {};
VULKAN_HPP_NAMESPACE::ArrayWrapper1D<uint8_t, STD_VIDEO_H265_MAX_NUM_LIST_REF> RefPicList0 = {};
VULKAN_HPP_NAMESPACE::ArrayWrapper1D<uint8_t, STD_VIDEO_H265_MAX_NUM_LIST_REF> RefPicList1 = {};
VULKAN_HPP_NAMESPACE::ArrayWrapper1D<uint8_t, STD_VIDEO_H265_MAX_NUM_LIST_REF> list_entry_l0 = {};
VULKAN_HPP_NAMESPACE::ArrayWrapper1D<uint8_t, STD_VIDEO_H265_MAX_NUM_LIST_REF> list_entry_l1 = {};
ArrayWrapper1D<uint8_t, STD_VIDEO_H265_MAX_NUM_LIST_REF> RefPicList0 = {};
ArrayWrapper1D<uint8_t, STD_VIDEO_H265_MAX_NUM_LIST_REF> RefPicList1 = {};
ArrayWrapper1D<uint8_t, STD_VIDEO_H265_MAX_NUM_LIST_REF> list_entry_l0 = {};
ArrayWrapper1D<uint8_t, STD_VIDEO_H265_MAX_NUM_LIST_REF> list_entry_l1 = {};
};
struct EncodeH265PictureInfoFlags
@@ -3391,13 +3503,13 @@ namespace VULKAN_HPP_NAMESPACE
}
public:
uint8_t num_long_term_sps = {};
uint8_t num_long_term_pics = {};
VULKAN_HPP_NAMESPACE::ArrayWrapper1D<uint8_t, STD_VIDEO_H265_MAX_LONG_TERM_REF_PICS_SPS> lt_idx_sps = {};
VULKAN_HPP_NAMESPACE::ArrayWrapper1D<uint8_t, STD_VIDEO_H265_MAX_LONG_TERM_PICS> poc_lsb_lt = {};
uint16_t used_by_curr_pic_lt_flag = {};
VULKAN_HPP_NAMESPACE::ArrayWrapper1D<uint8_t, STD_VIDEO_H265_MAX_DELTA_POC> delta_poc_msb_present_flag = {};
VULKAN_HPP_NAMESPACE::ArrayWrapper1D<uint8_t, STD_VIDEO_H265_MAX_DELTA_POC> delta_poc_msb_cycle_lt = {};
uint8_t num_long_term_sps = {};
uint8_t num_long_term_pics = {};
ArrayWrapper1D<uint8_t, STD_VIDEO_H265_MAX_LONG_TERM_REF_PICS_SPS> lt_idx_sps = {};
ArrayWrapper1D<uint8_t, STD_VIDEO_H265_MAX_LONG_TERM_PICS> poc_lsb_lt = {};
uint16_t used_by_curr_pic_lt_flag = {};
ArrayWrapper1D<uint8_t, STD_VIDEO_H265_MAX_DELTA_POC> delta_poc_msb_present_flag = {};
ArrayWrapper1D<uint8_t, STD_VIDEO_H265_MAX_DELTA_POC> delta_poc_msb_cycle_lt = {};
};
struct EncodeH265PictureInfo
@@ -3447,10 +3559,10 @@ namespace VULKAN_HPP_NAMESPACE
uint8_t short_term_ref_pic_set_idx = {};
int32_t PicOrderCntVal = {};
uint8_t TemporalId = {};
VULKAN_HPP_NAMESPACE::ArrayWrapper1D<uint8_t, 7> reserved1 = {};
const VULKAN_HPP_NAMESPACE::VULKAN_HPP_VIDEO_NAMESPACE::EncodeH265ReferenceListsInfo * pRefLists = {};
const VULKAN_HPP_NAMESPACE::VULKAN_HPP_VIDEO_NAMESPACE::H265ShortTermRefPicSet * pShortTermRefPicSet = {};
const VULKAN_HPP_NAMESPACE::VULKAN_HPP_VIDEO_NAMESPACE::EncodeH265LongTermRefPics * pLongTermRefPics = {};
ArrayWrapper1D<uint8_t, 7> reserved1 = {};
VULKAN_HPP_NAMESPACE::VULKAN_HPP_VIDEO_NAMESPACE::EncodeH265ReferenceListsInfo const * pRefLists = {};
VULKAN_HPP_NAMESPACE::VULKAN_HPP_VIDEO_NAMESPACE::H265ShortTermRefPicSet const * pShortTermRefPicSet = {};
VULKAN_HPP_NAMESPACE::VULKAN_HPP_VIDEO_NAMESPACE::EncodeH265LongTermRefPics const * pLongTermRefPics = {};
};
struct EncodeH265ReferenceInfoFlags
@@ -3700,13 +3812,13 @@ namespace VULKAN_HPP_NAMESPACE
}
public:
VULKAN_HPP_NAMESPACE::VULKAN_HPP_VIDEO_NAMESPACE::VP9LoopFilterFlags flags = {};
uint8_t loop_filter_level = {};
uint8_t loop_filter_sharpness = {};
uint8_t update_ref_delta = {};
VULKAN_HPP_NAMESPACE::ArrayWrapper1D<int8_t, STD_VIDEO_VP9_MAX_REF_FRAMES> loop_filter_ref_deltas = {};
uint8_t update_mode_delta = {};
VULKAN_HPP_NAMESPACE::ArrayWrapper1D<int8_t, STD_VIDEO_VP9_LOOP_FILTER_ADJUSTMENTS> loop_filter_mode_deltas = {};
VULKAN_HPP_NAMESPACE::VULKAN_HPP_VIDEO_NAMESPACE::VP9LoopFilterFlags flags = {};
uint8_t loop_filter_level = {};
uint8_t loop_filter_sharpness = {};
uint8_t update_ref_delta = {};
ArrayWrapper1D<int8_t, STD_VIDEO_VP9_MAX_REF_FRAMES> loop_filter_ref_deltas = {};
uint8_t update_mode_delta = {};
ArrayWrapper1D<int8_t, STD_VIDEO_VP9_LOOP_FILTER_ADJUSTMENTS> loop_filter_mode_deltas = {};
};
struct VP9SegmentationFlags
@@ -3789,11 +3901,11 @@ namespace VULKAN_HPP_NAMESPACE
}
public:
VULKAN_HPP_NAMESPACE::VULKAN_HPP_VIDEO_NAMESPACE::VP9SegmentationFlags flags = {};
VULKAN_HPP_NAMESPACE::ArrayWrapper1D<uint8_t, STD_VIDEO_VP9_MAX_SEGMENTATION_TREE_PROBS> segmentation_tree_probs = {};
VULKAN_HPP_NAMESPACE::ArrayWrapper1D<uint8_t, STD_VIDEO_VP9_MAX_SEGMENTATION_PRED_PROB> segmentation_pred_prob = {};
VULKAN_HPP_NAMESPACE::ArrayWrapper1D<uint8_t, STD_VIDEO_VP9_MAX_SEGMENTS> FeatureEnabled = {};
VULKAN_HPP_NAMESPACE::ArrayWrapper2D<int16_t, STD_VIDEO_VP9_MAX_SEGMENTS, STD_VIDEO_VP9_SEG_LVL_MAX> FeatureData = {};
VULKAN_HPP_NAMESPACE::VULKAN_HPP_VIDEO_NAMESPACE::VP9SegmentationFlags flags = {};
ArrayWrapper1D<uint8_t, STD_VIDEO_VP9_MAX_SEGMENTATION_TREE_PROBS> segmentation_tree_probs = {};
ArrayWrapper1D<uint8_t, STD_VIDEO_VP9_MAX_SEGMENTATION_PRED_PROB> segmentation_pred_prob = {};
ArrayWrapper1D<uint8_t, STD_VIDEO_VP9_MAX_SEGMENTS> FeatureEnabled = {};
ArrayWrapper2D<int16_t, STD_VIDEO_VP9_MAX_SEGMENTS, STD_VIDEO_VP9_SEG_LVL_MAX> FeatureData = {};
};
#endif
@@ -3905,10 +4017,10 @@ namespace VULKAN_HPP_NAMESPACE
int8_t delta_q_uv_ac = {};
uint8_t tile_cols_log2 = {};
uint8_t tile_rows_log2 = {};
VULKAN_HPP_NAMESPACE::ArrayWrapper1D<uint16_t, 3> reserved1 = {};
const VULKAN_HPP_NAMESPACE::VULKAN_HPP_VIDEO_NAMESPACE::VP9ColorConfig * pColorConfig = {};
const VULKAN_HPP_NAMESPACE::VULKAN_HPP_VIDEO_NAMESPACE::VP9LoopFilter * pLoopFilter = {};
const VULKAN_HPP_NAMESPACE::VULKAN_HPP_VIDEO_NAMESPACE::VP9Segmentation * pSegmentation = {};
ArrayWrapper1D<uint16_t, 3> reserved1 = {};
VULKAN_HPP_NAMESPACE::VULKAN_HPP_VIDEO_NAMESPACE::VP9ColorConfig const * pColorConfig = {};
VULKAN_HPP_NAMESPACE::VULKAN_HPP_VIDEO_NAMESPACE::VP9LoopFilter const * pLoopFilter = {};
VULKAN_HPP_NAMESPACE::VULKAN_HPP_VIDEO_NAMESPACE::VP9Segmentation const * pSegmentation = {};
};
#endif
@@ -4169,13 +4281,13 @@ namespace VULKAN_HPP_NAMESPACE
}
public:
VULKAN_HPP_NAMESPACE::VULKAN_HPP_VIDEO_NAMESPACE::AV1LoopFilterFlags flags = {};
VULKAN_HPP_NAMESPACE::ArrayWrapper1D<uint8_t, STD_VIDEO_AV1_MAX_LOOP_FILTER_STRENGTHS> loop_filter_level = {};
uint8_t loop_filter_sharpness = {};
uint8_t update_ref_delta = {};
VULKAN_HPP_NAMESPACE::ArrayWrapper1D<int8_t, STD_VIDEO_AV1_TOTAL_REFS_PER_FRAME> loop_filter_ref_deltas = {};
uint8_t update_mode_delta = {};
VULKAN_HPP_NAMESPACE::ArrayWrapper1D<int8_t, STD_VIDEO_AV1_LOOP_FILTER_ADJUSTMENTS> loop_filter_mode_deltas = {};
VULKAN_HPP_NAMESPACE::VULKAN_HPP_VIDEO_NAMESPACE::AV1LoopFilterFlags flags = {};
ArrayWrapper1D<uint8_t, STD_VIDEO_AV1_MAX_LOOP_FILTER_STRENGTHS> loop_filter_level = {};
uint8_t loop_filter_sharpness = {};
uint8_t update_ref_delta = {};
ArrayWrapper1D<int8_t, STD_VIDEO_AV1_TOTAL_REFS_PER_FRAME> loop_filter_ref_deltas = {};
uint8_t update_mode_delta = {};
ArrayWrapper1D<int8_t, STD_VIDEO_AV1_LOOP_FILTER_ADJUSTMENTS> loop_filter_mode_deltas = {};
};
struct AV1QuantizationFlags
@@ -4302,8 +4414,8 @@ namespace VULKAN_HPP_NAMESPACE
}
public:
VULKAN_HPP_NAMESPACE::ArrayWrapper1D<uint8_t, STD_VIDEO_AV1_MAX_SEGMENTS> FeatureEnabled = {};
VULKAN_HPP_NAMESPACE::ArrayWrapper2D<int16_t, STD_VIDEO_AV1_MAX_SEGMENTS, STD_VIDEO_AV1_SEG_LVL_MAX> FeatureData = {};
ArrayWrapper1D<uint8_t, STD_VIDEO_AV1_MAX_SEGMENTS> FeatureEnabled = {};
ArrayWrapper2D<int16_t, STD_VIDEO_AV1_MAX_SEGMENTS, STD_VIDEO_AV1_SEG_LVL_MAX> FeatureData = {};
};
struct AV1TileInfoFlags
@@ -4388,11 +4500,11 @@ namespace VULKAN_HPP_NAMESPACE
uint8_t TileRows = {};
uint16_t context_update_tile_id = {};
uint8_t tile_size_bytes_minus_1 = {};
VULKAN_HPP_NAMESPACE::ArrayWrapper1D<uint8_t, 7> reserved1 = {};
const uint16_t * pMiColStarts = {};
const uint16_t * pMiRowStarts = {};
const uint16_t * pWidthInSbsMinus1 = {};
const uint16_t * pHeightInSbsMinus1 = {};
ArrayWrapper1D<uint8_t, 7> reserved1 = {};
uint16_t const * pMiColStarts = {};
uint16_t const * pMiRowStarts = {};
uint16_t const * pWidthInSbsMinus1 = {};
uint16_t const * pHeightInSbsMinus1 = {};
};
struct AV1CDEF
@@ -4432,12 +4544,12 @@ namespace VULKAN_HPP_NAMESPACE
}
public:
uint8_t cdef_damping_minus_3 = {};
uint8_t cdef_bits = {};
VULKAN_HPP_NAMESPACE::ArrayWrapper1D<uint8_t, STD_VIDEO_AV1_MAX_CDEF_FILTER_STRENGTHS> cdef_y_pri_strength = {};
VULKAN_HPP_NAMESPACE::ArrayWrapper1D<uint8_t, STD_VIDEO_AV1_MAX_CDEF_FILTER_STRENGTHS> cdef_y_sec_strength = {};
VULKAN_HPP_NAMESPACE::ArrayWrapper1D<uint8_t, STD_VIDEO_AV1_MAX_CDEF_FILTER_STRENGTHS> cdef_uv_pri_strength = {};
VULKAN_HPP_NAMESPACE::ArrayWrapper1D<uint8_t, STD_VIDEO_AV1_MAX_CDEF_FILTER_STRENGTHS> cdef_uv_sec_strength = {};
uint8_t cdef_damping_minus_3 = {};
uint8_t cdef_bits = {};
ArrayWrapper1D<uint8_t, STD_VIDEO_AV1_MAX_CDEF_FILTER_STRENGTHS> cdef_y_pri_strength = {};
ArrayWrapper1D<uint8_t, STD_VIDEO_AV1_MAX_CDEF_FILTER_STRENGTHS> cdef_y_sec_strength = {};
ArrayWrapper1D<uint8_t, STD_VIDEO_AV1_MAX_CDEF_FILTER_STRENGTHS> cdef_uv_pri_strength = {};
ArrayWrapper1D<uint8_t, STD_VIDEO_AV1_MAX_CDEF_FILTER_STRENGTHS> cdef_uv_sec_strength = {};
};
struct AV1LoopRestoration
@@ -4475,8 +4587,8 @@ namespace VULKAN_HPP_NAMESPACE
}
public:
VULKAN_HPP_NAMESPACE::ArrayWrapper1D<StdVideoAV1FrameRestorationType, STD_VIDEO_AV1_MAX_NUM_PLANES> FrameRestorationType = {};
VULKAN_HPP_NAMESPACE::ArrayWrapper1D<uint16_t, STD_VIDEO_AV1_MAX_NUM_PLANES> LoopRestorationSize = {};
ArrayWrapper1D<StdVideoAV1FrameRestorationType, STD_VIDEO_AV1_MAX_NUM_PLANES> FrameRestorationType = {};
ArrayWrapper1D<uint16_t, STD_VIDEO_AV1_MAX_NUM_PLANES> LoopRestorationSize = {};
};
struct AV1GlobalMotion
@@ -4514,8 +4626,8 @@ namespace VULKAN_HPP_NAMESPACE
}
public:
VULKAN_HPP_NAMESPACE::ArrayWrapper1D<uint8_t, STD_VIDEO_AV1_NUM_REF_FRAMES> GmType = {};
VULKAN_HPP_NAMESPACE::ArrayWrapper2D<int32_t, STD_VIDEO_AV1_NUM_REF_FRAMES, STD_VIDEO_AV1_GLOBAL_MOTION_PARAMS> gm_params = {};
ArrayWrapper1D<uint8_t, STD_VIDEO_AV1_NUM_REF_FRAMES> GmType = {};
ArrayWrapper2D<int32_t, STD_VIDEO_AV1_NUM_REF_FRAMES, STD_VIDEO_AV1_GLOBAL_MOTION_PARAMS> gm_params = {};
};
struct AV1FilmGrainFlags
@@ -4604,31 +4716,31 @@ namespace VULKAN_HPP_NAMESPACE
}
public:
VULKAN_HPP_NAMESPACE::VULKAN_HPP_VIDEO_NAMESPACE::AV1FilmGrainFlags flags = {};
uint8_t grain_scaling_minus_8 = {};
uint8_t ar_coeff_lag = {};
uint8_t ar_coeff_shift_minus_6 = {};
uint8_t grain_scale_shift = {};
uint16_t grain_seed = {};
uint8_t film_grain_params_ref_idx = {};
uint8_t num_y_points = {};
VULKAN_HPP_NAMESPACE::ArrayWrapper1D<uint8_t, STD_VIDEO_AV1_MAX_NUM_Y_POINTS> point_y_value = {};
VULKAN_HPP_NAMESPACE::ArrayWrapper1D<uint8_t, STD_VIDEO_AV1_MAX_NUM_Y_POINTS> point_y_scaling = {};
uint8_t num_cb_points = {};
VULKAN_HPP_NAMESPACE::ArrayWrapper1D<uint8_t, STD_VIDEO_AV1_MAX_NUM_CB_POINTS> point_cb_value = {};
VULKAN_HPP_NAMESPACE::ArrayWrapper1D<uint8_t, STD_VIDEO_AV1_MAX_NUM_CB_POINTS> point_cb_scaling = {};
uint8_t num_cr_points = {};
VULKAN_HPP_NAMESPACE::ArrayWrapper1D<uint8_t, STD_VIDEO_AV1_MAX_NUM_CR_POINTS> point_cr_value = {};
VULKAN_HPP_NAMESPACE::ArrayWrapper1D<uint8_t, STD_VIDEO_AV1_MAX_NUM_CR_POINTS> point_cr_scaling = {};
VULKAN_HPP_NAMESPACE::ArrayWrapper1D<int8_t, STD_VIDEO_AV1_MAX_NUM_POS_LUMA> ar_coeffs_y_plus_128 = {};
VULKAN_HPP_NAMESPACE::ArrayWrapper1D<int8_t, STD_VIDEO_AV1_MAX_NUM_POS_CHROMA> ar_coeffs_cb_plus_128 = {};
VULKAN_HPP_NAMESPACE::ArrayWrapper1D<int8_t, STD_VIDEO_AV1_MAX_NUM_POS_CHROMA> ar_coeffs_cr_plus_128 = {};
uint8_t cb_mult = {};
uint8_t cb_luma_mult = {};
uint16_t cb_offset = {};
uint8_t cr_mult = {};
uint8_t cr_luma_mult = {};
uint16_t cr_offset = {};
VULKAN_HPP_NAMESPACE::VULKAN_HPP_VIDEO_NAMESPACE::AV1FilmGrainFlags flags = {};
uint8_t grain_scaling_minus_8 = {};
uint8_t ar_coeff_lag = {};
uint8_t ar_coeff_shift_minus_6 = {};
uint8_t grain_scale_shift = {};
uint16_t grain_seed = {};
uint8_t film_grain_params_ref_idx = {};
uint8_t num_y_points = {};
ArrayWrapper1D<uint8_t, STD_VIDEO_AV1_MAX_NUM_Y_POINTS> point_y_value = {};
ArrayWrapper1D<uint8_t, STD_VIDEO_AV1_MAX_NUM_Y_POINTS> point_y_scaling = {};
uint8_t num_cb_points = {};
ArrayWrapper1D<uint8_t, STD_VIDEO_AV1_MAX_NUM_CB_POINTS> point_cb_value = {};
ArrayWrapper1D<uint8_t, STD_VIDEO_AV1_MAX_NUM_CB_POINTS> point_cb_scaling = {};
uint8_t num_cr_points = {};
ArrayWrapper1D<uint8_t, STD_VIDEO_AV1_MAX_NUM_CR_POINTS> point_cr_value = {};
ArrayWrapper1D<uint8_t, STD_VIDEO_AV1_MAX_NUM_CR_POINTS> point_cr_scaling = {};
ArrayWrapper1D<int8_t, STD_VIDEO_AV1_MAX_NUM_POS_LUMA> ar_coeffs_y_plus_128 = {};
ArrayWrapper1D<int8_t, STD_VIDEO_AV1_MAX_NUM_POS_CHROMA> ar_coeffs_cb_plus_128 = {};
ArrayWrapper1D<int8_t, STD_VIDEO_AV1_MAX_NUM_POS_CHROMA> ar_coeffs_cr_plus_128 = {};
uint8_t cb_mult = {};
uint8_t cb_luma_mult = {};
uint16_t cb_offset = {};
uint8_t cr_mult = {};
uint8_t cr_luma_mult = {};
uint16_t cr_offset = {};
};
struct AV1SequenceHeaderFlags
@@ -4748,9 +4860,9 @@ namespace VULKAN_HPP_NAMESPACE
uint8_t order_hint_bits_minus_1 = {};
uint8_t seq_force_integer_mv = {};
uint8_t seq_force_screen_content_tools = {};
VULKAN_HPP_NAMESPACE::ArrayWrapper1D<uint8_t, 5> reserved1 = {};
const VULKAN_HPP_NAMESPACE::VULKAN_HPP_VIDEO_NAMESPACE::AV1ColorConfig * pColorConfig = {};
const VULKAN_HPP_NAMESPACE::VULKAN_HPP_VIDEO_NAMESPACE::AV1TimingInfo * pTimingInfo = {};
ArrayWrapper1D<uint8_t, 5> reserved1 = {};
VULKAN_HPP_NAMESPACE::VULKAN_HPP_VIDEO_NAMESPACE::AV1ColorConfig const * pColorConfig = {};
VULKAN_HPP_NAMESPACE::VULKAN_HPP_VIDEO_NAMESPACE::AV1TimingInfo const * pTimingInfo = {};
};
#endif
@@ -4887,22 +4999,22 @@ namespace VULKAN_HPP_NAMESPACE
uint8_t reserved1 = {};
VULKAN_HPP_NAMESPACE::VULKAN_HPP_VIDEO_NAMESPACE::AV1InterpolationFilter interpolation_filter =
VULKAN_HPP_NAMESPACE::VULKAN_HPP_VIDEO_NAMESPACE::AV1InterpolationFilter::eEighttap;
VULKAN_HPP_NAMESPACE::VULKAN_HPP_VIDEO_NAMESPACE::AV1TxMode TxMode = VULKAN_HPP_NAMESPACE::VULKAN_HPP_VIDEO_NAMESPACE::AV1TxMode::eOnly4X4;
uint8_t delta_q_res = {};
uint8_t delta_lf_res = {};
VULKAN_HPP_NAMESPACE::ArrayWrapper1D<uint8_t, STD_VIDEO_AV1_SKIP_MODE_FRAMES> SkipModeFrame = {};
uint8_t coded_denom = {};
VULKAN_HPP_NAMESPACE::ArrayWrapper1D<uint8_t, 3> reserved2 = {};
VULKAN_HPP_NAMESPACE::ArrayWrapper1D<uint8_t, STD_VIDEO_AV1_NUM_REF_FRAMES> OrderHints = {};
VULKAN_HPP_NAMESPACE::ArrayWrapper1D<uint32_t, STD_VIDEO_AV1_NUM_REF_FRAMES> expectedFrameId = {};
const VULKAN_HPP_NAMESPACE::VULKAN_HPP_VIDEO_NAMESPACE::AV1TileInfo * pTileInfo = {};
const VULKAN_HPP_NAMESPACE::VULKAN_HPP_VIDEO_NAMESPACE::AV1Quantization * pQuantization = {};
const VULKAN_HPP_NAMESPACE::VULKAN_HPP_VIDEO_NAMESPACE::AV1Segmentation * pSegmentation = {};
const VULKAN_HPP_NAMESPACE::VULKAN_HPP_VIDEO_NAMESPACE::AV1LoopFilter * pLoopFilter = {};
const VULKAN_HPP_NAMESPACE::VULKAN_HPP_VIDEO_NAMESPACE::AV1CDEF * pCDEF = {};
const VULKAN_HPP_NAMESPACE::VULKAN_HPP_VIDEO_NAMESPACE::AV1LoopRestoration * pLoopRestoration = {};
const VULKAN_HPP_NAMESPACE::VULKAN_HPP_VIDEO_NAMESPACE::AV1GlobalMotion * pGlobalMotion = {};
const VULKAN_HPP_NAMESPACE::VULKAN_HPP_VIDEO_NAMESPACE::AV1FilmGrain * pFilmGrain = {};
VULKAN_HPP_NAMESPACE::VULKAN_HPP_VIDEO_NAMESPACE::AV1TxMode TxMode = VULKAN_HPP_NAMESPACE::VULKAN_HPP_VIDEO_NAMESPACE::AV1TxMode::eOnly4X4;
uint8_t delta_q_res = {};
uint8_t delta_lf_res = {};
ArrayWrapper1D<uint8_t, STD_VIDEO_AV1_SKIP_MODE_FRAMES> SkipModeFrame = {};
uint8_t coded_denom = {};
ArrayWrapper1D<uint8_t, 3> reserved2 = {};
ArrayWrapper1D<uint8_t, STD_VIDEO_AV1_NUM_REF_FRAMES> OrderHints = {};
ArrayWrapper1D<uint32_t, STD_VIDEO_AV1_NUM_REF_FRAMES> expectedFrameId = {};
VULKAN_HPP_NAMESPACE::VULKAN_HPP_VIDEO_NAMESPACE::AV1TileInfo const * pTileInfo = {};
VULKAN_HPP_NAMESPACE::VULKAN_HPP_VIDEO_NAMESPACE::AV1Quantization const * pQuantization = {};
VULKAN_HPP_NAMESPACE::VULKAN_HPP_VIDEO_NAMESPACE::AV1Segmentation const * pSegmentation = {};
VULKAN_HPP_NAMESPACE::VULKAN_HPP_VIDEO_NAMESPACE::AV1LoopFilter const * pLoopFilter = {};
VULKAN_HPP_NAMESPACE::VULKAN_HPP_VIDEO_NAMESPACE::AV1CDEF const * pCDEF = {};
VULKAN_HPP_NAMESPACE::VULKAN_HPP_VIDEO_NAMESPACE::AV1LoopRestoration const * pLoopRestoration = {};
VULKAN_HPP_NAMESPACE::VULKAN_HPP_VIDEO_NAMESPACE::AV1GlobalMotion const * pGlobalMotion = {};
VULKAN_HPP_NAMESPACE::VULKAN_HPP_VIDEO_NAMESPACE::AV1FilmGrain const * pFilmGrain = {};
};
struct DecodeAV1ReferenceInfoFlags
@@ -4986,7 +5098,7 @@ namespace VULKAN_HPP_NAMESPACE
uint8_t frame_type = {};
uint8_t RefFrameSignBias = {};
uint8_t OrderHint = {};
VULKAN_HPP_NAMESPACE::ArrayWrapper1D<uint8_t, STD_VIDEO_AV1_NUM_REF_FRAMES> SavedOrderHints = {};
ArrayWrapper1D<uint8_t, STD_VIDEO_AV1_NUM_REF_FRAMES> SavedOrderHints = {};
};
#endif
@@ -5301,22 +5413,22 @@ namespace VULKAN_HPP_NAMESPACE
uint16_t render_height_minus_1 = {};
VULKAN_HPP_NAMESPACE::VULKAN_HPP_VIDEO_NAMESPACE::AV1InterpolationFilter interpolation_filter =
VULKAN_HPP_NAMESPACE::VULKAN_HPP_VIDEO_NAMESPACE::AV1InterpolationFilter::eEighttap;
VULKAN_HPP_NAMESPACE::VULKAN_HPP_VIDEO_NAMESPACE::AV1TxMode TxMode = VULKAN_HPP_NAMESPACE::VULKAN_HPP_VIDEO_NAMESPACE::AV1TxMode::eOnly4X4;
uint8_t delta_q_res = {};
uint8_t delta_lf_res = {};
VULKAN_HPP_NAMESPACE::ArrayWrapper1D<uint8_t, STD_VIDEO_AV1_NUM_REF_FRAMES> ref_order_hint = {};
VULKAN_HPP_NAMESPACE::ArrayWrapper1D<int8_t, STD_VIDEO_AV1_REFS_PER_FRAME> ref_frame_idx = {};
VULKAN_HPP_NAMESPACE::ArrayWrapper1D<uint8_t, 3> reserved1 = {};
VULKAN_HPP_NAMESPACE::ArrayWrapper1D<uint32_t, STD_VIDEO_AV1_REFS_PER_FRAME> delta_frame_id_minus_1 = {};
const VULKAN_HPP_NAMESPACE::VULKAN_HPP_VIDEO_NAMESPACE::AV1TileInfo * pTileInfo = {};
const VULKAN_HPP_NAMESPACE::VULKAN_HPP_VIDEO_NAMESPACE::AV1Quantization * pQuantization = {};
const VULKAN_HPP_NAMESPACE::VULKAN_HPP_VIDEO_NAMESPACE::AV1Segmentation * pSegmentation = {};
const VULKAN_HPP_NAMESPACE::VULKAN_HPP_VIDEO_NAMESPACE::AV1LoopFilter * pLoopFilter = {};
const VULKAN_HPP_NAMESPACE::VULKAN_HPP_VIDEO_NAMESPACE::AV1CDEF * pCDEF = {};
const VULKAN_HPP_NAMESPACE::VULKAN_HPP_VIDEO_NAMESPACE::AV1LoopRestoration * pLoopRestoration = {};
const VULKAN_HPP_NAMESPACE::VULKAN_HPP_VIDEO_NAMESPACE::AV1GlobalMotion * pGlobalMotion = {};
const VULKAN_HPP_NAMESPACE::VULKAN_HPP_VIDEO_NAMESPACE::EncodeAV1ExtensionHeader * pExtensionHeader = {};
const uint32_t * pBufferRemovalTimes = {};
VULKAN_HPP_NAMESPACE::VULKAN_HPP_VIDEO_NAMESPACE::AV1TxMode TxMode = VULKAN_HPP_NAMESPACE::VULKAN_HPP_VIDEO_NAMESPACE::AV1TxMode::eOnly4X4;
uint8_t delta_q_res = {};
uint8_t delta_lf_res = {};
ArrayWrapper1D<uint8_t, STD_VIDEO_AV1_NUM_REF_FRAMES> ref_order_hint = {};
ArrayWrapper1D<int8_t, STD_VIDEO_AV1_REFS_PER_FRAME> ref_frame_idx = {};
ArrayWrapper1D<uint8_t, 3> reserved1 = {};
ArrayWrapper1D<uint32_t, STD_VIDEO_AV1_REFS_PER_FRAME> delta_frame_id_minus_1 = {};
VULKAN_HPP_NAMESPACE::VULKAN_HPP_VIDEO_NAMESPACE::AV1TileInfo const * pTileInfo = {};
VULKAN_HPP_NAMESPACE::VULKAN_HPP_VIDEO_NAMESPACE::AV1Quantization const * pQuantization = {};
VULKAN_HPP_NAMESPACE::VULKAN_HPP_VIDEO_NAMESPACE::AV1Segmentation const * pSegmentation = {};
VULKAN_HPP_NAMESPACE::VULKAN_HPP_VIDEO_NAMESPACE::AV1LoopFilter const * pLoopFilter = {};
VULKAN_HPP_NAMESPACE::VULKAN_HPP_VIDEO_NAMESPACE::AV1CDEF const * pCDEF = {};
VULKAN_HPP_NAMESPACE::VULKAN_HPP_VIDEO_NAMESPACE::AV1LoopRestoration const * pLoopRestoration = {};
VULKAN_HPP_NAMESPACE::VULKAN_HPP_VIDEO_NAMESPACE::AV1GlobalMotion const * pGlobalMotion = {};
VULKAN_HPP_NAMESPACE::VULKAN_HPP_VIDEO_NAMESPACE::EncodeAV1ExtensionHeader const * pExtensionHeader = {};
uint32_t const * pBufferRemovalTimes = {};
};
struct EncodeAV1ReferenceInfoFlags
@@ -5400,11 +5512,16 @@ namespace VULKAN_HPP_NAMESPACE
uint32_t RefFrameId = {};
VULKAN_HPP_NAMESPACE::VULKAN_HPP_VIDEO_NAMESPACE::AV1FrameType frame_type = VULKAN_HPP_NAMESPACE::VULKAN_HPP_VIDEO_NAMESPACE::AV1FrameType::eKey;
uint8_t OrderHint = {};
VULKAN_HPP_NAMESPACE::ArrayWrapper1D<uint8_t, 3> reserved1 = {};
const VULKAN_HPP_NAMESPACE::VULKAN_HPP_VIDEO_NAMESPACE::EncodeAV1ExtensionHeader * pExtensionHeader = {};
ArrayWrapper1D<uint8_t, 3> reserved1 = {};
VULKAN_HPP_NAMESPACE::VULKAN_HPP_VIDEO_NAMESPACE::EncodeAV1ExtensionHeader const * pExtensionHeader = {};
};
#endif
} // namespace VULKAN_HPP_VIDEO_NAMESPACE
} // namespace VULKAN_HPP_NAMESPACE
#if defined( has_include_was_not_defined )
# undef has_include_was_not_defined
# undef __has_include
#endif
#endif
+1 -1
View File
@@ -2,7 +2,7 @@
#define VULKAN_WAYLAND_H_ 1
/*
** Copyright 2015-2025 The Khronos Group Inc.
** Copyright 2015-2026 The Khronos Group Inc.
**
** SPDX-License-Identifier: Apache-2.0
*/
+1 -1
View File
@@ -2,7 +2,7 @@
#define VULKAN_WIN32_H_ 1
/*
** Copyright 2015-2025 The Khronos Group Inc.
** Copyright 2015-2026 The Khronos Group Inc.
**
** SPDX-License-Identifier: Apache-2.0
*/
+1 -1
View File
@@ -2,7 +2,7 @@
#define VULKAN_XCB_H_ 1
/*
** Copyright 2015-2025 The Khronos Group Inc.
** Copyright 2015-2026 The Khronos Group Inc.
**
** SPDX-License-Identifier: Apache-2.0
*/
+1 -1
View File
@@ -2,7 +2,7 @@
#define VULKAN_XLIB_H_ 1
/*
** Copyright 2015-2025 The Khronos Group Inc.
** Copyright 2015-2026 The Khronos Group Inc.
**
** SPDX-License-Identifier: Apache-2.0
*/
+1 -1
View File
@@ -2,7 +2,7 @@
#define VULKAN_XLIB_XRANDR_H_ 1
/*
** Copyright 2015-2025 The Khronos Group Inc.
** Copyright 2015-2026 The Khronos Group Inc.
**
** SPDX-License-Identifier: Apache-2.0
*/
-13
View File
@@ -11,17 +11,6 @@ set_targetdir("./")
set_optimize("fastest")
-- Options
option("images_optimized")
set_default(true)
add_defines("IMAGE_OPTIMIZED")
option_end()
option("force_integrated_gpu")
set_default(false)
add_defines("FORCE_INTEGRATED_GPU")
option_end()
option("graphics_memory_dump")
set_default(false)
add_defines("GRAPHICS_MEMORY_DUMP")
@@ -48,8 +37,6 @@ target("mlx")
set_default(true)
set_license("MIT")
set_kind("shared")
add_options("images_optimized")
add_options("force_integrated_gpu")
add_options("graphics_memory_dump")
add_options("profiler")
add_options("force_wayland")