Vladimír Vondruš
55ec24062d
Vk: GCC 4.8, stop it, it's not Monday today.
6 years ago
Vladimír Vondruš
f75cc9330c
Vk: a non-error-prone way to retrieve queues after device creation.
...
I wonder why this couldn't be done this way in the Vulkan API directly.
6 years ago
Vladimír Vondruš
84e1939ee1
external: no need to export the flextVkInit*() functions anymore.
6 years ago
Vladimír Vondruš
374f816762
Vk: device creation.
6 years ago
Vladimír Vondruš
b91e137058
Vk: initial seed for the magnum-vk-info utility.
6 years ago
Vladimír Vondruš
81cafc9ddf
Vk: querying device queue family properties.
6 years ago
Vladimír Vondruš
722da61e65
Vk: externally tuneable device selection.
6 years ago
Vladimír Vondruš
d28442e9b1
Vk: device extension enumeration.
6 years ago
Vladimír Vondruš
cbdea03862
Vk: test coverage with various extensions and versions.
6 years ago
Vladimír Vondruš
6515c04be1
Vk: enable KHR_get_physical_device_properties by default on Vulkan 1.0.
6 years ago
Vladimír Vondruš
aa384a5d38
Vk: initial device enumeration.
6 years ago
Vladimír Vondruš
0392aeb878
Vk: instance creation.
6 years ago
Vladimír Vondruš
b7b466d49a
Vk: parsing Version from configuration.
...
Needed so I can implement --magnum-vulkan-version.
6 years ago
Vladimír Vondruš
bb00bf43bf
Vk: variadic Is[Instance]Extension checks.
...
Because I'd like to static_assert on these.
6 years ago
Vladimír Vondruš
132bcacf28
Vk: add HandleFlags, similar to GL::ObjectFlags.
6 years ago
Vladimír Vondruš
189dad59c6
Vk: yeah well of course we can't encode Magnum version into VK_VERSION.
...
Sigh.
6 years ago
Vladimír Vondruš
64ba1e6732
Vk: enumerating instance extension properties.
...
Device extension properties will reuse a large part of this API.
6 years ago
Vladimír Vondruš
18e223e4d9
Vk: enumerating layer properties.
...
Instance layers, with the same interface designed to be reused for
device-level layers.
6 years ago
Vladimír Vondruš
ffbceef22c
Vk: retrieving instance version.
6 years ago
Vladimír Vondruš
6c9c9d9194
Vk: expose all extensions for version 1.2.
...
Also provide compile-time info with them, a runtime list and everything
else similar to what's done for GL.
6 years ago
Vladimír Vondruš
21a91e8b0a
external: fetch vkEnumerateInstanceVersion() in a static constructor.
...
Version query. Such a simple and obvious thing and because they forgot
to add such function to Vulkan 1.0, the only three possible ways to
retrieve a version retrieval function are:
1. with a static constructor that could make a library crash even before
main() is reached if the driver is *extra* shitty
2. with a init() function that would cause race conditions if ever
called from multiple threads (which of course can happen because you
need to know instance version in order to use the correct function
pointers and route pNext fields)
3. with a init() function that internally uses std::mutexes and
std::call_once and <functional> and atomics and whatnot and thus
takes longer to compile than the rest of the engine
Approach 2 chosen originally but the race condition countermeasures
turned out to be extra annoying to use, so switched to approach 1 now.
6 years ago
Vladimír Vondruš
65552a6c26
Vk: add Version enum, utities for version comparison and extraction.
...
Same as the VK_VERSION_*() macros but without C-style casts that produce
warnings.
6 years ago
Vladimír Vondruš
f4f8612f7e
Vk: wrap VkResult, add an assert macro for it.
6 years ago
Vladimír Vondruš
2464c76f6e
GL: add a clarifying comment.
6 years ago
Vladimír Vondruš
1046e051b9
doc: expand the File Formats tables, add "bundleability" info for each.
...
Providing a legend describing what each color-code means and listing
image and scene converters as well.
6 years ago
Vladimír Vondruš
55d7a1e6e0
doc: updated changelog and credits.
6 years ago
Vladimír Vondruš
dbc67a01ce
Math: reorder test to be in the same order as in the header.
6 years ago
Vladimír Vondruš
07ba09c700
Math: minor cleanup.
...
No need to use contractions, inverseRayDirection is okay because nobody
needs to type it anywhere. Also no need for the `ones` vector in the
test, Float/Vector3 works as well.
6 years ago
Vladimír Vondruš
8f59c37b87
DebugTools: update layout of the colormap overview to fit longer names.
6 years ago
janos
81feec8f2d
DebugTools: add Smooth-Cool-Warm colormap.
6 years ago
Vladimír Vondruš
37c031f349
Platform: don't use const or let in EM_ASM(), breaks closure compiler.
...
And add a note there to prevent this from being changed again in the
future.
6 years ago
janos
6a0fdf2194
add ray range interection algorithm
6 years ago
Vladimír Vondruš
ff14efa446
AnyShaderConverter: adapt test to GlslangShaderConverter changes.
...
Format::Spirv is now allowed output format for validation.
6 years ago
Vladimír Vondruš
38172d41b2
shaderconverter: allow specifying input/output format as well.
...
To make it convenient, the format equals to the usual file extension.
Currently skipping WGSL and DXIL however because I have no idea what
extension should they have, not even the DirectXShaderCompiler repo
tests show anything useful, there it's either generic LLVM *.ll or *.bc.
Come on, did people in 2020 also forget how to design file formats?!
6 years ago
Vladimír Vondruš
807a7e939c
ObjImporter: compile with exceptions enabled on Emscripten.
...
Actually looking forward to when I rewrite this whole thing.
6 years ago
Vladimír Vondruš
686b915bc3
Math: this test wasn't right.
...
Uncovered after the latest Emscripten-related update to
CORRADE_LONG_DOUBLE_SAME_AS_DOUBLE.
6 years ago
Vladimír Vondruš
ef7232e71d
Math: clean up obsolete test workflows.
6 years ago
Pablo Escobar
f94035805d
EmscriptenApplication: use _malloc instead of internal allocate
6 years ago
Vladimír Vondruš
095408791f
Updated changelog and credits.
6 years ago
Squareys
f69f3393ec
Math: Add DualQuaternion/DualComplex::from(rotation, translation)
...
Signed-off-by: Squareys <squareys@googlemail.com>
6 years ago
Vladimír Vondruš
e6322dcfd1
Math: use angle literals in all test code.
...
It was originally done using the Deg() / Rad() constructors in order to
be compatible with GCC 4.6, but fortunately those days are long gone.
Co-authored-by: Squareys <squareys@googlemail.com>
6 years ago
Vladimír Vondruš
d51094e972
GL: wait, PrimitiveQuery isn't on ES2 at all, so why the ifdefs.
6 years ago
Vladimír Vondruš
1a626a1db5
GL: Context move constructor should be marked noexcept.
6 years ago
Vladimír Vondruš
e8f13af4be
GL: test noexcept-movability of all GL classes.
...
Not sure why this wasn't done for ages already, all other
(non-GL) classes have it.
6 years ago
Vladimír Vondruš
bd5364fe36
Expand Magnum tag tests with what Corrade tags have also tested.
6 years ago
Vladimír Vondruš
a8b99fb020
Platform: use a branded color.
6 years ago
Vladimír Vondruš
1fe8df400b
Platform: add a TODO about target_link_options().
6 years ago
Vladimír Vondruš
f4201541f1
doc: updated credits and changelog.
6 years ago
Pablo Escobar
f22421247d
Platform: use new CSS classes in gl-info
6 years ago
Pablo Escobar
c3c0010304
Platform: avoid potential race conditions on load.
6 years ago