732 Commits

Author SHA1 Message Date
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
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
92 changed files with 109945 additions and 50855 deletions
+2 -2
View File
@@ -11,13 +11,13 @@ 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@v7
uses: peter-evans/create-pull-request@v8
with:
token: ${{ secrets.REPO_SCOPED_TOKEN }}
delete-branch: true
+1 -1
View File
@@ -23,7 +23,7 @@ jobs:
steps:
- name: Checkout repository
uses: actions/checkout@v4
uses: actions/checkout@v6
- name: Install system dependencies
run: |
+1 -1
View File
@@ -23,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
@@ -16,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
+2 -2
View File
@@ -23,7 +23,7 @@ jobs:
steps:
- name: Checkout repository
uses: actions/checkout@v4
uses: actions/checkout@v6
- uses: NcStudios/VulkanCI@v1.2
@@ -69,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 }}
+2 -2
View File
@@ -16,7 +16,7 @@ jobs:
fail-fast: false
matrix:
os: [windows-latest]
arch: [x64]
arch: [x64, x86]
mode: [release]
runs-on: ${{ matrix.os }}
@@ -28,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
-5
View File
@@ -4,7 +4,6 @@ MAKE = make --no-print-directory
OS ?= $(shell uname -s)
DEBUG ?= false
TOOLCHAIN ?= clang
FORCE_INTEGRATED_GPU ?= false
GRAPHICS_MEMORY_DUMP ?= false
PROFILER ?= false
FORCE_WAYLAND ?= false
@@ -64,10 +63,6 @@ else
CXXFLAGS += -O3
endif
ifeq ($(FORCE_INTEGRATED_GPU), true)
_ENABLEDFLAGS += FORCE_INTEGRATED_GPU
endif
ifeq ($(GRAPHICS_MEMORY_DUMP), true)
_ENABLEDFLAGS += GRAPHICS_MEMORY_DUMP
endif
+1 -4
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,9 +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`
### 🖥️ 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`.
-3
View File
@@ -16,9 +16,6 @@ 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|...]`
### 🖥️ 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`.
+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);
}
+1 -3
View File
@@ -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
*/
@@ -407,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);
@@ -416,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 -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();
+109 -2
View File
@@ -24,7 +24,7 @@
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;
@@ -362,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 });
@@ -375,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
+246 -3
View File
@@ -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);
+2 -2
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
*/
@@ -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
*/
+1 -1
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
*/
+1 -1
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
*/
+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
*/
+1 -1
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
*/
+1 -1
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
*/
+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
*/
+1 -1
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
*/
+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
*/
+141 -9173
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
*/
+7717 -4212
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
*/
+1 -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
*/
+4913 -2413
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
*/
+3052 -1892
View File
File diff suppressed because it is too large Load Diff
File diff suppressed because it is too large Load Diff
File diff suppressed because it is too large Load Diff
+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
*/
+10979 -8741
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
*/
+7112 -4489
View File
File diff suppressed because it is too large Load Diff
+2490 -207
View File
File diff suppressed because it is too large Load Diff
+59 -29
View File
@@ -1,4 +1,4 @@
// Copyright 2015-2025 The Khronos Group Inc.
// Copyright 2015-2026 The Khronos Group Inc.
//
// SPDX-License-Identifier: Apache-2.0 OR MIT
//
@@ -35,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
@@ -75,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
@@ -87,8 +116,14 @@
# define VULKAN_HPP_SUPPORT_SPAN
#endif
#if !defined( VULKAN_HPP_STD_MODULE ) && defined( __cpp_modules ) && defined( __cpp_lib_modules )
# 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
@@ -163,7 +198,7 @@
# else
# define VULKAN_HPP_CONSTEXPR_17
# endif
# if ( 201907 <= __cpp_constexpr ) && ( !defined( __GNUC__ ) || ( 110400 < GCC_VERSION ) )
# if ( 201907 <= __cpp_constexpr ) && ( !defined( __GNUC__ ) || ( 120000 <= GCC_VERSION ) )
# define VULKAN_HPP_CONSTEXPR_20 constexpr
# else
# define VULKAN_HPP_CONSTEXPR_20
@@ -221,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
@@ -260,20 +299,6 @@
# endif
#endif
namespace VULKAN_HPP_NAMESPACE
{
namespace detail
{
class DispatchLoaderDynamic;
#if !defined( VULKAN_HPP_DEFAULT_DISPATCHER )
# if VULKAN_HPP_DISPATCH_LOADER_DYNAMIC == 1
extern VULKAN_HPP_STORAGE_API DispatchLoaderDynamic defaultDispatchLoaderDynamic;
# endif
#endif
} // namespace detail
} // namespace VULKAN_HPP_NAMESPACE
#if !defined( VULKAN_HPP_DISPATCH_LOADER_DYNAMIC_TYPE )
# define VULKAN_HPP_DISPATCH_LOADER_DYNAMIC_TYPE VULKAN_HPP_NAMESPACE::detail::DispatchLoaderDynamic
#endif
@@ -304,18 +329,23 @@ namespace VULKAN_HPP_NAMESPACE
# define VULKAN_HPP_DEFAULT_DISPATCHER ::VULKAN_HPP_NAMESPACE::detail::getDispatchLoaderStatic()
# define VULKAN_HPP_DEFAULT_DISPATCH_LOADER_DYNAMIC_STORAGE
# 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
# 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 ) && defined( VULKAN_HPP_USE_STD_EXPECTED )
# if !( defined( VULKAN_HPP_ENABLE_STD_MODULE ) && defined( VULKAN_HPP_STD_MODULE ) )
# include <expected>
# endif
# define VULKAN_HPP_EXPECTED std::expected
# define VULKAN_HPP_UNEXPECTED std::unexpected
#endif
#if !defined( VULKAN_HPP_RAII_NAMESPACE )
+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
*/
+70 -1
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,6 +19,75 @@ 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;
+5874 -3384
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
*/
+131 -119
View File
@@ -1,4 +1,4 @@
// Copyright 2015-2025 The Khronos Group Inc.
// Copyright 2015-2026 The Khronos Group Inc.
//
// SPDX-License-Identifier: Apache-2.0 OR MIT
//
@@ -8,13 +8,12 @@
#ifndef VULKAN_SHARED_HPP
#define VULKAN_SHARED_HPP
#include <vulkan/vulkan.hpp>
#if !defined( VULKAN_HPP_CXX_MODULE )
# include <atomic> // std::atomic_size_t
# include <vulkan/vulkan.hpp>
#endif
namespace VULKAN_HPP_NAMESPACE
VULKAN_HPP_EXPORT namespace VULKAN_HPP_NAMESPACE
{
#if !defined( VULKAN_HPP_NO_SMART_HANDLE )
template <typename HandleType>
@@ -113,8 +112,8 @@ namespace VULKAN_HPP_NAMESPACE
{
}
ReferenceCounter( const ReferenceCounter & ) = delete;
ReferenceCounter & operator=( const ReferenceCounter & ) = delete;
ReferenceCounter( ReferenceCounter const & ) = delete;
ReferenceCounter & operator=( ReferenceCounter const & ) = delete;
public:
size_t addRef() VULKAN_HPP_NOEXCEPT
@@ -148,7 +147,7 @@ namespace VULKAN_HPP_NAMESPACE
{
}
SharedHandleBase( const SharedHandleBase & o ) VULKAN_HPP_NOEXCEPT
SharedHandleBase( SharedHandleBase const & o ) VULKAN_HPP_NOEXCEPT
{
o.addRef();
m_handle = o.m_handle;
@@ -163,7 +162,7 @@ namespace VULKAN_HPP_NAMESPACE
o.m_control = nullptr;
}
SharedHandleBase & operator=( const SharedHandleBase & o ) VULKAN_HPP_NOEXCEPT
SharedHandleBase & operator=( SharedHandleBase const & o ) VULKAN_HPP_NOEXCEPT
{
SharedHandleBase( o ).swap( *this );
return *this;
@@ -213,7 +212,7 @@ namespace VULKAN_HPP_NAMESPACE
}
# endif
const HandleType * operator->() const VULKAN_HPP_NOEXCEPT
HandleType const * operator->() const VULKAN_HPP_NOEXCEPT
{
return &m_handle;
}
@@ -235,25 +234,25 @@ namespace VULKAN_HPP_NAMESPACE
}
template <typename T = HandleType>
typename std::enable_if<HasDestructor<T>::value, const SharedHandle<DestructorTypeOf<HandleType>> &>::type getDestructorType() const VULKAN_HPP_NOEXCEPT
typename std::enable_if<HasDestructor<T>::value, SharedHandle<DestructorTypeOf<HandleType>> const &>::type getDestructorType() const VULKAN_HPP_NOEXCEPT
{
return getHeader().parent;
}
protected:
template <typename T = HandleType>
static typename std::enable_if<!HasDestructor<T>::value, void>::type internalDestroy( const HeaderType & control, HandleType handle ) VULKAN_HPP_NOEXCEPT
static typename std::enable_if<!HasDestructor<T>::value, void>::type internalDestroy( HeaderType const & control, HandleType handle ) VULKAN_HPP_NOEXCEPT
{
control.deleter.destroy( handle );
}
template <typename T = HandleType>
static typename std::enable_if<HasDestructor<T>::value, void>::type internalDestroy( const HeaderType & control, HandleType handle ) VULKAN_HPP_NOEXCEPT
static typename std::enable_if<HasDestructor<T>::value, void>::type internalDestroy( HeaderType const & control, HandleType handle ) VULKAN_HPP_NOEXCEPT
{
control.deleter.destroy( control.parent.get(), handle );
}
const HeaderType & getHeader() const VULKAN_HPP_NOEXCEPT
HeaderType const & getHeader() const VULKAN_HPP_NOEXCEPT
{
return m_control->m_header;
}
@@ -295,7 +294,7 @@ namespace VULKAN_HPP_NAMESPACE
explicit SharedHandle( HandleType handle,
SharedHandle<DestructorTypeOf<HandleType>> parent,
SharedHandle<typename GetPoolType<HandleType>::type> pool,
const Dispatcher & dispatch VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) VULKAN_HPP_NOEXCEPT
Dispatcher const & dispatch VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT ) VULKAN_HPP_NOEXCEPT
: BaseType( handle, std::move( parent ), DeleterType{ std::move( pool ), dispatch } )
{
}
@@ -321,24 +320,22 @@ namespace VULKAN_HPP_NAMESPACE
# pragma clang diagnostic ignored "-Wcast-function-type"
# endif
template <typename HandleType>
template <typename HandleType, typename Dispatcher = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
class ObjectDestroyShared
{
public:
using DestructorType = typename SharedHandleTraits<HandleType>::DestructorType;
template <class Dispatcher>
using DestroyFunctionPointerType =
typename std::conditional<HasDestructor<HandleType>::value,
void ( DestructorType::* )( HandleType, const AllocationCallbacks *, const Dispatcher & ) const,
void ( HandleType::* )( const AllocationCallbacks *, const Dispatcher & ) const>::type;
void ( DestructorType::* )( HandleType, AllocationCallbacks const *, Dispatcher const & ) const,
void ( HandleType::* )( AllocationCallbacks const *, Dispatcher const & ) const>::type;
using SelectorType = typename std::conditional<HasDestructor<HandleType>::value, DestructorType, HandleType>::type;
template <typename Dispatcher = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
ObjectDestroyShared( Optional<const AllocationCallbacks> allocationCallbacks VULKAN_HPP_DEFAULT_ARGUMENT_NULLPTR_ASSIGNMENT,
const Dispatcher & dispatch VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT )
: m_destroy( reinterpret_cast<decltype( m_destroy )>( static_cast<DestroyFunctionPointerType<Dispatcher>>( &SelectorType::destroy ) ) )
ObjectDestroyShared( Optional<AllocationCallbacks const> allocationCallbacks VULKAN_HPP_DEFAULT_ASSIGNMENT( nullptr ),
Dispatcher const & dispatch VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT )
: m_destroy( reinterpret_cast<decltype( m_destroy )>( static_cast<DestroyFunctionPointerType>( &SelectorType::destroy ) ) )
, m_dispatch( &dispatch )
, m_allocationCallbacks( allocationCallbacks )
{
@@ -360,24 +357,22 @@ namespace VULKAN_HPP_NAMESPACE
}
private:
DestroyFunctionPointerType<detail::DispatchLoaderBase> m_destroy = nullptr;
const detail::DispatchLoaderBase * m_dispatch = nullptr;
Optional<const AllocationCallbacks> m_allocationCallbacks = nullptr;
DestroyFunctionPointerType m_destroy = nullptr;
Dispatcher const * m_dispatch = nullptr;
Optional<AllocationCallbacks const> m_allocationCallbacks = nullptr;
};
template <typename HandleType>
template <typename HandleType, typename Dispatcher = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
class ObjectFreeShared
{
public:
using DestructorType = typename SharedHandleTraits<HandleType>::DestructorType;
template <class Dispatcher>
using DestroyFunctionPointerType = void ( DestructorType::* )( HandleType, const AllocationCallbacks *, const Dispatcher & ) const;
using DestroyFunctionPointerType = void ( DestructorType::* )( HandleType, AllocationCallbacks const *, Dispatcher const & ) const;
template <class Dispatcher = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
ObjectFreeShared( Optional<const AllocationCallbacks> allocationCallbacks VULKAN_HPP_DEFAULT_ARGUMENT_NULLPTR_ASSIGNMENT,
const Dispatcher & dispatch VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT )
: m_destroy( reinterpret_cast<decltype( m_destroy )>( static_cast<DestroyFunctionPointerType<Dispatcher>>( &DestructorType::free ) ) )
ObjectFreeShared( Optional<AllocationCallbacks const> allocationCallbacks VULKAN_HPP_DEFAULT_ASSIGNMENT( nullptr ),
Dispatcher const & dispatch VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT )
: m_destroy( reinterpret_cast<decltype( m_destroy )>( static_cast<DestroyFunctionPointerType>( &DestructorType::free ) ) )
, m_dispatch( &dispatch )
, m_allocationCallbacks( allocationCallbacks )
{
@@ -391,24 +386,21 @@ namespace VULKAN_HPP_NAMESPACE
}
private:
DestroyFunctionPointerType<detail::DispatchLoaderBase> m_destroy = nullptr;
const detail::DispatchLoaderBase * m_dispatch = nullptr;
Optional<const AllocationCallbacks> m_allocationCallbacks = nullptr;
DestroyFunctionPointerType m_destroy = nullptr;
Dispatcher const * m_dispatch = nullptr;
Optional<AllocationCallbacks const> m_allocationCallbacks = nullptr;
};
template <typename HandleType>
template <typename HandleType, typename Dispatcher = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
class ObjectReleaseShared
{
public:
using DestructorType = typename SharedHandleTraits<HandleType>::DestructorType;
template <class Dispatcher>
using DestroyFunctionPointerType = void ( DestructorType::* )( HandleType, const Dispatcher & ) const;
using DestroyFunctionPointerType = void ( DestructorType::* )( HandleType, Dispatcher const & ) const;
template <class Dispatcher = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
ObjectReleaseShared( const Dispatcher & dispatch VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT )
: m_destroy( reinterpret_cast<decltype( m_destroy )>( static_cast<DestroyFunctionPointerType<Dispatcher>>( &DestructorType::release ) ) )
, m_dispatch( &dispatch )
ObjectReleaseShared( Dispatcher const & dispatch VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT )
: m_destroy( reinterpret_cast<decltype( m_destroy )>( static_cast<DestroyFunctionPointerType>( &DestructorType::release ) ) ), m_dispatch( &dispatch )
{
}
@@ -420,11 +412,11 @@ namespace VULKAN_HPP_NAMESPACE
}
private:
DestroyFunctionPointerType<detail::DispatchLoaderBase> m_destroy = nullptr;
const detail::DispatchLoaderBase * m_dispatch = nullptr;
DestroyFunctionPointerType m_destroy = nullptr;
Dispatcher const * m_dispatch = nullptr;
};
template <typename HandleType, typename PoolType>
template <typename HandleType, typename PoolType, typename Dispatcher = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
class PoolFreeShared
{
public:
@@ -432,17 +424,14 @@ namespace VULKAN_HPP_NAMESPACE
using PoolTypeExport = PoolType;
template <class Dispatcher>
using ReturnType = decltype( std::declval<DestructorType>().free( PoolType(), 0u, nullptr, Dispatcher() ) );
template <class Dispatcher>
using DestroyFunctionPointerType = ReturnType<Dispatcher> ( DestructorType::* )( PoolType, uint32_t, const HandleType *, const Dispatcher & ) const;
using DestroyFunctionPointerType = ReturnType ( DestructorType::* )( PoolType, uint32_t, HandleType const *, Dispatcher const & ) const;
PoolFreeShared() = default;
template <class Dispatcher = VULKAN_HPP_DEFAULT_DISPATCHER_TYPE>
PoolFreeShared( SharedHandle<PoolType> pool, const Dispatcher & dispatch VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT )
: m_destroy( reinterpret_cast<decltype( m_destroy )>( static_cast<DestroyFunctionPointerType<Dispatcher>>( &DestructorType::free ) ) )
PoolFreeShared( SharedHandle<PoolType> pool, Dispatcher const & dispatch VULKAN_HPP_DEFAULT_DISPATCHER_ASSIGNMENT )
: m_destroy( reinterpret_cast<decltype( m_destroy )>( static_cast<DestroyFunctionPointerType>( &DestructorType::free ) ) )
, m_dispatch( &dispatch )
, m_pool( std::move( pool ) )
{
@@ -456,9 +445,9 @@ namespace VULKAN_HPP_NAMESPACE
}
private:
DestroyFunctionPointerType<detail::DispatchLoaderBase> m_destroy = nullptr;
const detail::DispatchLoaderBase * m_dispatch = nullptr;
SharedHandle<PoolType> m_pool{};
DestroyFunctionPointerType m_destroy = nullptr;
Dispatcher const * m_dispatch = nullptr;
SharedHandle<PoolType> m_pool{};
};
# if defined( __GNUC__ ) && !defined( __clang__ ) && !defined( __INTEL_COMPILER )
@@ -523,16 +512,6 @@ namespace VULKAN_HPP_NAMESPACE
using SharedSemaphore = SharedHandle<Semaphore>;
template <>
class SharedHandleTraits<Event>
{
public:
using DestructorType = Device;
using deleter = detail::ObjectDestroyShared<Event>;
};
using SharedEvent = SharedHandle<Event>;
template <>
class SharedHandleTraits<QueryPool>
{
@@ -553,16 +532,6 @@ namespace VULKAN_HPP_NAMESPACE
using SharedBuffer = SharedHandle<Buffer>;
template <>
class SharedHandleTraits<BufferView>
{
public:
using DestructorType = Device;
using deleter = detail::ObjectDestroyShared<BufferView>;
};
using SharedBufferView = SharedHandle<BufferView>;
template <>
class SharedHandleTraits<Image>
{
@@ -583,6 +552,46 @@ namespace VULKAN_HPP_NAMESPACE
using SharedImageView = SharedHandle<ImageView>;
template <>
class SharedHandleTraits<CommandPool>
{
public:
using DestructorType = Device;
using deleter = detail::ObjectDestroyShared<CommandPool>;
};
using SharedCommandPool = SharedHandle<CommandPool>;
template <>
class SharedHandleTraits<CommandBuffer>
{
public:
using DestructorType = Device;
using deleter = detail::PoolFreeShared<CommandBuffer, CommandPool>;
};
using SharedCommandBuffer = SharedHandle<CommandBuffer>;
template <>
class SharedHandleTraits<Event>
{
public:
using DestructorType = Device;
using deleter = detail::ObjectDestroyShared<Event>;
};
using SharedEvent = SharedHandle<Event>;
template <>
class SharedHandleTraits<BufferView>
{
public:
using DestructorType = Device;
using deleter = detail::ObjectDestroyShared<BufferView>;
};
using SharedBufferView = SharedHandle<BufferView>;
template <>
class SharedHandleTraits<ShaderModule>
{
@@ -683,38 +692,7 @@ namespace VULKAN_HPP_NAMESPACE
using SharedRenderPass = SharedHandle<RenderPass>;
template <>
class SharedHandleTraits<CommandPool>
{
public:
using DestructorType = Device;
using deleter = detail::ObjectDestroyShared<CommandPool>;
};
using SharedCommandPool = SharedHandle<CommandPool>;
template <>
class SharedHandleTraits<CommandBuffer>
{
public:
using DestructorType = Device;
using deleter = detail::PoolFreeShared<CommandBuffer, CommandPool>;
};
using SharedCommandBuffer = SharedHandle<CommandBuffer>;
//=== VK_VERSION_1_1 ===
template <>
class SharedHandleTraits<SamplerYcbcrConversion>
{
public:
using DestructorType = Device;
using deleter = detail::ObjectDestroyShared<SamplerYcbcrConversion>;
};
using SharedSamplerYcbcrConversion = SharedHandle<SamplerYcbcrConversion>;
using SharedSamplerYcbcrConversionKHR = SharedHandle<SamplerYcbcrConversion>;
template <>
class SharedHandleTraits<DescriptorUpdateTemplate>
{
@@ -726,6 +704,17 @@ namespace VULKAN_HPP_NAMESPACE
using SharedDescriptorUpdateTemplate = SharedHandle<DescriptorUpdateTemplate>;
using SharedDescriptorUpdateTemplateKHR = SharedHandle<DescriptorUpdateTemplate>;
template <>
class SharedHandleTraits<SamplerYcbcrConversion>
{
public:
using DestructorType = Device;
using deleter = detail::ObjectDestroyShared<SamplerYcbcrConversion>;
};
using SharedSamplerYcbcrConversion = SharedHandle<SamplerYcbcrConversion>;
using SharedSamplerYcbcrConversionKHR = SharedHandle<SamplerYcbcrConversion>;
//=== VK_VERSION_1_3 ===
template <>
class SharedHandleTraits<PrivateDataSlot>
@@ -835,6 +824,28 @@ namespace VULKAN_HPP_NAMESPACE
using SharedDebugUtilsMessengerEXT = SharedHandle<DebugUtilsMessengerEXT>;
//=== VK_AMD_gpa_interface ===
template <>
class SharedHandleTraits<GpaSessionAMD>
{
public:
using DestructorType = Device;
using deleter = detail::ObjectDestroyShared<GpaSessionAMD>;
};
using SharedGpaSessionAMD = SharedHandle<GpaSessionAMD>;
//=== VK_EXT_descriptor_heap ===
template <>
class SharedHandleTraits<TensorARM>
{
public:
using DestructorType = Device;
using deleter = detail::ObjectDestroyShared<TensorARM>;
};
using SharedTensorARM = SharedHandle<TensorARM>;
//=== VK_KHR_acceleration_structure ===
template <>
class SharedHandleTraits<AccelerationStructureKHR>
@@ -949,16 +960,6 @@ namespace VULKAN_HPP_NAMESPACE
using SharedMicromapEXT = SharedHandle<MicromapEXT>;
//=== VK_ARM_tensors ===
template <>
class SharedHandleTraits<TensorARM>
{
public:
using DestructorType = Device;
using deleter = detail::ObjectDestroyShared<TensorARM>;
};
using SharedTensorARM = SharedHandle<TensorARM>;
template <>
class SharedHandleTraits<TensorViewARM>
{
@@ -1045,6 +1046,17 @@ namespace VULKAN_HPP_NAMESPACE
using SharedIndirectExecutionSetEXT = SharedHandle<IndirectExecutionSetEXT>;
//=== VK_ARM_shader_instrumentation ===
template <>
class SharedHandleTraits<ShaderInstrumentationARM>
{
public:
using DestructorType = Device;
using deleter = detail::ObjectDestroyShared<ShaderInstrumentationARM>;
};
using SharedShaderInstrumentationARM = SharedHandle<ShaderInstrumentationARM>;
// a number of SharedHandle specializations
enum class SwapchainOwns
{
@@ -1084,7 +1096,7 @@ namespace VULKAN_HPP_NAMESPACE
}
protected:
static void internalDestroy( const ImageHeader & control, Image handle ) VULKAN_HPP_NOEXCEPT
static void internalDestroy( ImageHeader const & control, Image handle ) VULKAN_HPP_NOEXCEPT
{
if ( control.swapchainOwned == SwapchainOwns::no )
{
@@ -1129,7 +1141,7 @@ namespace VULKAN_HPP_NAMESPACE
}
public:
const SharedHandle<SurfaceKHR> & getSurface() const VULKAN_HPP_NOEXCEPT
SharedHandle<SurfaceKHR> const & getSurface() const VULKAN_HPP_NOEXCEPT
{
return getHeader().surface;
}
@@ -1144,13 +1156,13 @@ namespace VULKAN_HPP_NAMESPACE
public:
using SharedHandleBase<HandleType, DestructorType>::SharedHandleBase;
const DestructorType & getDestructorType() const VULKAN_HPP_NOEXCEPT
DestructorType const & getDestructorType() const VULKAN_HPP_NOEXCEPT
{
return SharedHandleBase<HandleType, DestructorType>::getHeader();
}
protected:
static void internalDestroy( const DestructorType &, HandleType ) VULKAN_HPP_NOEXCEPT {}
static void internalDestroy( DestructorType const &, HandleType ) VULKAN_HPP_NOEXCEPT {}
};
//=== VK_VERSION_1_0 ===
File diff suppressed because it is too large Load Diff
+59530 -12669
View File
File diff suppressed because it is too large Load Diff
+2710 -1624
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
*/
+59 -310
View File
@@ -1,323 +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
{
//=================
//=== CONSTANTs ===
//=================
#if defined( VULKAN_VIDEO_CODEC_H264STD_H_ )
//=== vulkan_video_codec_h264std ===
using VULKAN_HPP_NAMESPACE::VULKAN_HPP_VIDEO_NAMESPACE::H264CpbCntListSize;
using VULKAN_HPP_NAMESPACE::VULKAN_HPP_VIDEO_NAMESPACE::H264MaxChromaPlanes;
using VULKAN_HPP_NAMESPACE::VULKAN_HPP_VIDEO_NAMESPACE::H264MaxNumListRef;
using VULKAN_HPP_NAMESPACE::VULKAN_HPP_VIDEO_NAMESPACE::H264NoReferencePicture;
using VULKAN_HPP_NAMESPACE::VULKAN_HPP_VIDEO_NAMESPACE::H264ScalingList4X4NumElements;
using VULKAN_HPP_NAMESPACE::VULKAN_HPP_VIDEO_NAMESPACE::H264ScalingList4X4NumLists;
using VULKAN_HPP_NAMESPACE::VULKAN_HPP_VIDEO_NAMESPACE::H264ScalingList8X8NumElements;
using VULKAN_HPP_NAMESPACE::VULKAN_HPP_VIDEO_NAMESPACE::H264ScalingList8X8NumLists;
#if defined( _MSC_VER )
# pragma warning( pop )
#elif defined( __clang__ )
# pragma clang diagnostic pop
#elif defined( __GNUC__ )
#endif
#if defined( VULKAN_VIDEO_CODEC_H264STD_DECODE_H_ )
//=== vulkan_video_codec_h264std_decode ===
using VULKAN_HPP_NAMESPACE::VULKAN_HPP_VIDEO_NAMESPACE::DecodeH264FieldOrderCountListSize;
#endif
#if defined( VULKAN_VIDEO_CODEC_H265STD_H_ )
//=== vulkan_video_codec_h265std ===
using VULKAN_HPP_NAMESPACE::VULKAN_HPP_VIDEO_NAMESPACE::H265ChromaQpOffsetListSize;
using VULKAN_HPP_NAMESPACE::VULKAN_HPP_VIDEO_NAMESPACE::H265ChromaQpOffsetTileColsListSize;
using VULKAN_HPP_NAMESPACE::VULKAN_HPP_VIDEO_NAMESPACE::H265ChromaQpOffsetTileRowsListSize;
using VULKAN_HPP_NAMESPACE::VULKAN_HPP_VIDEO_NAMESPACE::H265CpbCntListSize;
using VULKAN_HPP_NAMESPACE::VULKAN_HPP_VIDEO_NAMESPACE::H265MaxChromaPlanes;
using VULKAN_HPP_NAMESPACE::VULKAN_HPP_VIDEO_NAMESPACE::H265MaxDeltaPoc;
using VULKAN_HPP_NAMESPACE::VULKAN_HPP_VIDEO_NAMESPACE::H265MaxDpbSize;
using VULKAN_HPP_NAMESPACE::VULKAN_HPP_VIDEO_NAMESPACE::H265MaxLongTermPics;
using VULKAN_HPP_NAMESPACE::VULKAN_HPP_VIDEO_NAMESPACE::H265MaxLongTermRefPicsSps;
using VULKAN_HPP_NAMESPACE::VULKAN_HPP_VIDEO_NAMESPACE::H265MaxNumListRef;
using VULKAN_HPP_NAMESPACE::VULKAN_HPP_VIDEO_NAMESPACE::H265MaxShortTermRefPicSets;
using VULKAN_HPP_NAMESPACE::VULKAN_HPP_VIDEO_NAMESPACE::H265NoReferencePicture;
using VULKAN_HPP_NAMESPACE::VULKAN_HPP_VIDEO_NAMESPACE::H265PredictorPaletteCompEntriesListSize;
using VULKAN_HPP_NAMESPACE::VULKAN_HPP_VIDEO_NAMESPACE::H265PredictorPaletteComponentsListSize;
using VULKAN_HPP_NAMESPACE::VULKAN_HPP_VIDEO_NAMESPACE::H265ScalingList16X16NumElements;
using VULKAN_HPP_NAMESPACE::VULKAN_HPP_VIDEO_NAMESPACE::H265ScalingList16X16NumLists;
using VULKAN_HPP_NAMESPACE::VULKAN_HPP_VIDEO_NAMESPACE::H265ScalingList32X32NumElements;
using VULKAN_HPP_NAMESPACE::VULKAN_HPP_VIDEO_NAMESPACE::H265ScalingList32X32NumLists;
using VULKAN_HPP_NAMESPACE::VULKAN_HPP_VIDEO_NAMESPACE::H265ScalingList4X4NumElements;
using VULKAN_HPP_NAMESPACE::VULKAN_HPP_VIDEO_NAMESPACE::H265ScalingList4X4NumLists;
using VULKAN_HPP_NAMESPACE::VULKAN_HPP_VIDEO_NAMESPACE::H265ScalingList8X8NumElements;
using VULKAN_HPP_NAMESPACE::VULKAN_HPP_VIDEO_NAMESPACE::H265ScalingList8X8NumLists;
using VULKAN_HPP_NAMESPACE::VULKAN_HPP_VIDEO_NAMESPACE::H265SublayersListSize;
#endif
#if defined( VULKAN_VIDEO_CODEC_H265STD_DECODE_H_ )
//=== vulkan_video_codec_h265std_decode ===
using VULKAN_HPP_NAMESPACE::VULKAN_HPP_VIDEO_NAMESPACE::DecodeH265RefPicSetListSize;
#endif
#if defined( VULKAN_VIDEO_CODEC_VP9STD_H_ )
//=== vulkan_video_codec_vp9std ===
using VULKAN_HPP_NAMESPACE::VULKAN_HPP_VIDEO_NAMESPACE::Vp9LoopFilterAdjustments;
using VULKAN_HPP_NAMESPACE::VULKAN_HPP_VIDEO_NAMESPACE::Vp9MaxRefFrames;
using VULKAN_HPP_NAMESPACE::VULKAN_HPP_VIDEO_NAMESPACE::Vp9MaxSegmentationPredProb;
using VULKAN_HPP_NAMESPACE::VULKAN_HPP_VIDEO_NAMESPACE::Vp9MaxSegmentationTreeProbs;
using VULKAN_HPP_NAMESPACE::VULKAN_HPP_VIDEO_NAMESPACE::Vp9MaxSegments;
using VULKAN_HPP_NAMESPACE::VULKAN_HPP_VIDEO_NAMESPACE::Vp9NumRefFrames;
using VULKAN_HPP_NAMESPACE::VULKAN_HPP_VIDEO_NAMESPACE::Vp9RefsPerFrame;
using VULKAN_HPP_NAMESPACE::VULKAN_HPP_VIDEO_NAMESPACE::Vp9SegLvlMax;
#endif
#if defined( VULKAN_VIDEO_CODEC_AV1STD_H_ )
//=== vulkan_video_codec_av1std ===
using VULKAN_HPP_NAMESPACE::VULKAN_HPP_VIDEO_NAMESPACE::Av1GlobalMotionParams;
using VULKAN_HPP_NAMESPACE::VULKAN_HPP_VIDEO_NAMESPACE::Av1LoopFilterAdjustments;
using VULKAN_HPP_NAMESPACE::VULKAN_HPP_VIDEO_NAMESPACE::Av1MaxCdefFilterStrengths;
using VULKAN_HPP_NAMESPACE::VULKAN_HPP_VIDEO_NAMESPACE::Av1MaxLoopFilterStrengths;
using VULKAN_HPP_NAMESPACE::VULKAN_HPP_VIDEO_NAMESPACE::Av1MaxNumCbPoints;
using VULKAN_HPP_NAMESPACE::VULKAN_HPP_VIDEO_NAMESPACE::Av1MaxNumCrPoints;
using VULKAN_HPP_NAMESPACE::VULKAN_HPP_VIDEO_NAMESPACE::Av1MaxNumPlanes;
using VULKAN_HPP_NAMESPACE::VULKAN_HPP_VIDEO_NAMESPACE::Av1MaxNumPosChroma;
using VULKAN_HPP_NAMESPACE::VULKAN_HPP_VIDEO_NAMESPACE::Av1MaxNumPosLuma;
using VULKAN_HPP_NAMESPACE::VULKAN_HPP_VIDEO_NAMESPACE::Av1MaxNumYPoints;
using VULKAN_HPP_NAMESPACE::VULKAN_HPP_VIDEO_NAMESPACE::Av1MaxSegments;
using VULKAN_HPP_NAMESPACE::VULKAN_HPP_VIDEO_NAMESPACE::Av1MaxTileCols;
using VULKAN_HPP_NAMESPACE::VULKAN_HPP_VIDEO_NAMESPACE::Av1MaxTileRows;
using VULKAN_HPP_NAMESPACE::VULKAN_HPP_VIDEO_NAMESPACE::Av1NumRefFrames;
using VULKAN_HPP_NAMESPACE::VULKAN_HPP_VIDEO_NAMESPACE::Av1PrimaryRefNone;
using VULKAN_HPP_NAMESPACE::VULKAN_HPP_VIDEO_NAMESPACE::Av1RefsPerFrame;
using VULKAN_HPP_NAMESPACE::VULKAN_HPP_VIDEO_NAMESPACE::Av1SegLvlMax;
using VULKAN_HPP_NAMESPACE::VULKAN_HPP_VIDEO_NAMESPACE::Av1SelectIntegerMv;
using VULKAN_HPP_NAMESPACE::VULKAN_HPP_VIDEO_NAMESPACE::Av1SelectScreenContentTools;
using VULKAN_HPP_NAMESPACE::VULKAN_HPP_VIDEO_NAMESPACE::Av1SkipModeFrames;
using VULKAN_HPP_NAMESPACE::VULKAN_HPP_VIDEO_NAMESPACE::Av1TotalRefsPerFrame;
#endif
//=============
//=== ENUMs ===
//=============
#if defined( VULKAN_VIDEO_CODEC_H264STD_H_ )
//=== vulkan_video_codec_h264std ===
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;
#endif
#if defined( VULKAN_VIDEO_CODEC_H264STD_DECODE_H_ )
//=== vulkan_video_codec_h264std_decode ===
using VULKAN_HPP_NAMESPACE::VULKAN_HPP_VIDEO_NAMESPACE::DecodeH264FieldOrderCount;
#endif
#if defined( VULKAN_VIDEO_CODEC_H265STD_H_ )
//=== vulkan_video_codec_h265std ===
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;
#endif
#if defined( VULKAN_VIDEO_CODEC_VP9STD_H_ )
//=== vulkan_video_codec_vp9std ===
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;
#endif
#if defined( VULKAN_VIDEO_CODEC_AV1STD_H_ )
//=== vulkan_video_codec_av1std ===
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;
#endif
//===============
//=== STRUCTS ===
//===============
#if defined( VULKAN_VIDEO_CODEC_H264STD_H_ )
//=== vulkan_video_codec_h264std ===
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;
#endif
#if defined( VULKAN_VIDEO_CODEC_H264STD_DECODE_H_ )
//=== vulkan_video_codec_h264std_decode ===
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;
#endif
#if defined( VULKAN_VIDEO_CODEC_H264STD_ENCODE_H_ )
//=== vulkan_video_codec_h264std_encode ===
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;
#endif
#if defined( VULKAN_VIDEO_CODEC_H265STD_H_ )
//=== vulkan_video_codec_h265std ===
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;
#endif
#if defined( VULKAN_VIDEO_CODEC_H265STD_DECODE_H_ )
//=== vulkan_video_codec_h265std_decode ===
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;
#endif
#if defined( VULKAN_VIDEO_CODEC_H265STD_ENCODE_H_ )
//=== vulkan_video_codec_h265std_encode ===
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;
#endif
#if defined( VULKAN_VIDEO_CODEC_VP9STD_H_ )
//=== vulkan_video_codec_vp9std ===
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;
#endif
#if defined( VULKAN_VIDEO_CODEC_VP9STD_DECODE_H_ )
//=== vulkan_video_codec_vp9std_decode ===
using VULKAN_HPP_NAMESPACE::VULKAN_HPP_VIDEO_NAMESPACE::DecodeVP9PictureInfo;
using VULKAN_HPP_NAMESPACE::VULKAN_HPP_VIDEO_NAMESPACE::DecodeVP9PictureInfoFlags;
#endif
#if defined( VULKAN_VIDEO_CODEC_AV1STD_H_ )
//=== vulkan_video_codec_av1std ===
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;
#endif
#if defined( VULKAN_VIDEO_CODEC_AV1STD_DECODE_H_ )
//=== vulkan_video_codec_av1std_decode ===
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;
#endif
#if defined( VULKAN_VIDEO_CODEC_AV1STD_ENCODE_H_ )
//=== vulkan_video_codec_av1std_encode ===
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;
#endif
} // namespace VULKAN_HPP_VIDEO_NAMESPACE
} // namespace VULKAN_HPP_NAMESPACE
+96 -98
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
//
@@ -13,56 +13,55 @@
# define has_include_was_not_defined
#endif
// clang-format off
#include <vulkan/vulkan.hpp>
// clang-format on
#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
#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
#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 ===
//=================
@@ -805,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
@@ -982,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
@@ -1087,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
@@ -1669,9 +1668,9 @@ namespace VULKAN_HPP_NAMESPACE
uint8_t refList1ModOpCount = {};
uint8_t refPicMarkingOpCount = {};
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 = {};
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
@@ -1721,7 +1720,7 @@ namespace VULKAN_HPP_NAMESPACE
int32_t PicOrderCnt = {};
uint8_t temporal_id = {};
ArrayWrapper1D<uint8_t, 3> reserved1 = {};
const VULKAN_HPP_NAMESPACE::VULKAN_HPP_VIDEO_NAMESPACE::EncodeH264ReferenceListsInfo * pRefLists = {};
VULKAN_HPP_NAMESPACE::VULKAN_HPP_VIDEO_NAMESPACE::EncodeH264ReferenceListsInfo const * pRefLists = {};
};
struct EncodeH264ReferenceInfo
@@ -1819,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
@@ -2016,8 +2015,8 @@ namespace VULKAN_HPP_NAMESPACE
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 = {};
const VULKAN_HPP_NAMESPACE::VULKAN_HPP_VIDEO_NAMESPACE::H265SubLayerHrdParameters * pSubLayerHrdParametersNal = {};
const VULKAN_HPP_NAMESPACE::VULKAN_HPP_VIDEO_NAMESPACE::H265SubLayerHrdParameters * pSubLayerHrdParametersVcl = {};
VULKAN_HPP_NAMESPACE::VULKAN_HPP_VIDEO_NAMESPACE::H265SubLayerHrdParameters const * pSubLayerHrdParametersNal = {};
VULKAN_HPP_NAMESPACE::VULKAN_HPP_VIDEO_NAMESPACE::H265SubLayerHrdParameters const * pSubLayerHrdParametersVcl = {};
};
struct H265VpsFlags
@@ -2198,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
@@ -2387,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
@@ -2744,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
@@ -2932,8 +2931,8 @@ namespace VULKAN_HPP_NAMESPACE
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 = {};
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::H265ScalingLists const * pScalingLists = {};
VULKAN_HPP_NAMESPACE::VULKAN_HPP_VIDEO_NAMESPACE::H265PredictorPaletteEntries const * pPredictorPaletteEntries = {};
};
#endif
@@ -3325,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
@@ -3561,9 +3560,9 @@ namespace VULKAN_HPP_NAMESPACE
int32_t PicOrderCntVal = {};
uint8_t TemporalId = {};
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 = {};
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
@@ -4019,9 +4018,9 @@ namespace VULKAN_HPP_NAMESPACE
uint8_t tile_cols_log2 = {};
uint8_t tile_rows_log2 = {};
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 = {};
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
@@ -4502,10 +4501,10 @@ namespace VULKAN_HPP_NAMESPACE
uint16_t context_update_tile_id = {};
uint8_t tile_size_bytes_minus_1 = {};
ArrayWrapper1D<uint8_t, 7> reserved1 = {};
const uint16_t * pMiColStarts = {};
const uint16_t * pMiRowStarts = {};
const uint16_t * pWidthInSbsMinus1 = {};
const uint16_t * pHeightInSbsMinus1 = {};
uint16_t const * pMiColStarts = {};
uint16_t const * pMiRowStarts = {};
uint16_t const * pWidthInSbsMinus1 = {};
uint16_t const * pHeightInSbsMinus1 = {};
};
struct AV1CDEF
@@ -4862,8 +4861,8 @@ namespace VULKAN_HPP_NAMESPACE
uint8_t seq_force_integer_mv = {};
uint8_t seq_force_screen_content_tools = {};
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 = {};
VULKAN_HPP_NAMESPACE::VULKAN_HPP_VIDEO_NAMESPACE::AV1ColorConfig const * pColorConfig = {};
VULKAN_HPP_NAMESPACE::VULKAN_HPP_VIDEO_NAMESPACE::AV1TimingInfo const * pTimingInfo = {};
};
#endif
@@ -5008,14 +5007,14 @@ namespace VULKAN_HPP_NAMESPACE
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 = {};
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::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
@@ -5421,15 +5420,15 @@ namespace VULKAN_HPP_NAMESPACE
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 = {};
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::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
@@ -5514,10 +5513,9 @@ namespace VULKAN_HPP_NAMESPACE
VULKAN_HPP_NAMESPACE::VULKAN_HPP_VIDEO_NAMESPACE::AV1FrameType frame_type = VULKAN_HPP_NAMESPACE::VULKAN_HPP_VIDEO_NAMESPACE::AV1FrameType::eKey;
uint8_t OrderHint = {};
ArrayWrapper1D<uint8_t, 3> reserved1 = {};
const VULKAN_HPP_NAMESPACE::VULKAN_HPP_VIDEO_NAMESPACE::EncodeAV1ExtensionHeader * pExtensionHeader = {};
VULKAN_HPP_NAMESPACE::VULKAN_HPP_VIDEO_NAMESPACE::EncodeAV1ExtensionHeader const * pExtensionHeader = {};
};
#endif
} // namespace VULKAN_HPP_VIDEO_NAMESPACE
} // namespace VULKAN_HPP_NAMESPACE
+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
*/
-6
View File
@@ -11,11 +11,6 @@ set_targetdir("./")
set_optimize("fastest")
-- Options
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")
@@ -42,7 +37,6 @@ target("mlx")
set_default(true)
set_license("MIT")
set_kind("shared")
add_options("force_integrated_gpu")
add_options("graphics_memory_dump")
add_options("profiler")
add_options("force_wayland")