Git Product home page Git Product logo

Comments (54)

jpbruyere avatar jpbruyere commented on May 24, 2024 2

Great, I'm going to install my first archlinux tonight :-)

from vkvg.

jpbruyere avatar jpbruyere commented on May 24, 2024 1

you have to select a font which has glyph for the codepoints you provide, for japanese I've test with (on debian) with

sudo apt install fonts-umeplus-cl
vkvg_select_font_face(c, "UmePlus CL Gothic");  

it's possible to load directly .ttf files: vkvg_load_font_from_path(...)

from vkvg.

Rubo3 avatar Rubo3 commented on May 24, 2024 1

Truly marvelous, now both examples work! Thank you so much! I still get the first validation error though, but after all the time I've taken you, this alone is just fantastic.

from vkvg.

jpbruyere avatar jpbruyere commented on May 24, 2024 1

I thanks you too for helping me improving vkvg, Hope to have you published some stuffs...

from vkvg.

jpbruyere avatar jpbruyere commented on May 24, 2024 1

I have to investigate...no it's a vulkan barrier not well configured

from vkvg.

jpbruyere avatar jpbruyere commented on May 24, 2024

I add to install 'vulkan-devel' to have a successful build. It's great to have an arch package, thanks a lot. I'll put it on my README on my next push.

from vkvg.

jpbruyere avatar jpbruyere commented on May 24, 2024

done, And I discovered that there's a debian user repo now...

from vkvg.

Rubo3 avatar Rubo3 commented on May 24, 2024

I add to install 'vulkan-devel' to have a successful build. It's great to have an arch package, thanks a lot. I'll put it on my README on my next push.

I am investigating whether we really need the full vulkan-devel group, so I wrote a simple example mimicking the one found here https://jan.newmarch.name/Wayland/Cairo:

#include <stdbool.h>

#include <vulkan/vulkan.h>
#include <vkvg.h>

int main(void) {
    VkvgDevice d = vkvg_device_create(VK_SAMPLE_COUNT_32_BIT, false);
    VkvgSurface s = vkvg_surface_create(d, 1280, 720);
    VkvgContext c = vkvg_create(s);
    vkvg_select_font_face(c, "serif");
    vkvg_set_font_size(c, 32);
    vkvg_set_source_rgb(c, 0.0, 0.0, 1.0);
    vkvg_move_to(c, 10.0, 50.0);
    vkvg_show_text(c, "おはよう, Παν語");
    vkvg_destroy(c);
    vkvg_surface_write_to_png(s, "hello.png");
    vkvg_surface_destroy(s);
}

I compiled it with gcc a.c -lvulkan -lvkh -lvkvg, but when I run it I get:

Fatal : VkResult is -2 in /run/media/Volume/Marco/Nextcloud/Sviluppo/aur-vkvg/src/vkvg-0.2.1/vkh/src/vkh_image.c at line 57
Segmentation fault (core dumped)

This happens with and without vulkan-devel, so I think I am missing something, but what?

from vkvg.

jpbruyere avatar jpbruyere commented on May 24, 2024

VK_SAMPLE_COUNT_32_BIT is surely not available (max ~8 for common hardwares). I could test maximum available sample count in device creation and throw an error if count not supported.
Note that you may compile with:

gcc main.c -lvkvg -o test

or

 gcc main.c `pkg-config --libs vkvg` -o test

from vkvg.

jpbruyere avatar jpbruyere commented on May 24, 2024

I pushed on master a diff with sample count check, but cairo used to return valid pointer even if failed and set status accordingly. I have to make some changes to mimic the same behavior.

from vkvg.

Rubo3 avatar Rubo3 commented on May 24, 2024

Thanks! I set it to 8 bits, now it works, but the hello.png shows an empty image, even with ASCII "Hello, world!" instead of "おはよう, Παν語". What else did I do wrong?

from vkvg.

Rubo3 avatar Rubo3 commented on May 24, 2024

Thanks, sorry to bother you again... I updated vkvg to the latest commit (vkvg-git coming soon on the AUR) and I tried with this (it can handle the "Hello, world!" codepoints, or at least I think it can):

...
vkvg_load_font_from_path(c, "/usr/share/fonts/noto/NotoSans-Regular.ttf", "Noto Sans Regular");
vkvg_set_font_size(c, 32);
vkvg_set_source_rgb(c, 0.0, 0.0, 1.0);
vkvg_move_to(c, 10.0, 50.0);
vkvg_show_text(c, "Hello, world!");
...

but the PNG is still empty. What am I doing wrong?

from vkvg.

jpbruyere avatar jpbruyere commented on May 24, 2024

No problems, it's always a pleasure to give support for VKVG.
this program works well for me, what is the status of the context: vkvg_status (c); also you may compile in Debug and set vkvg_log_level = VKVG_LOG_ERR;

from vkvg.

jpbruyere avatar jpbruyere commented on May 24, 2024

maybe start with a simple paint:

	VkvgContext ctx = vkvg_create (surf);
	vkvg_set_source_rgb(ctx,1,0,0);
	vkvg_paint(ctx);
	vkvg_destroy(ctx);

from vkvg.

Rubo3 avatar Rubo3 commented on May 24, 2024

Thank you for being so kind! I wrote:

...
VkvgContext c = vkvg_create(s);
printf("%d\n", vkvg_status(c));
vkvg_set_source_rgb(c, 1, 0, 0);
printf("%d\n", vkvg_status(c));
vkvg_paint(c);
printf("%d\n", vkvg_status(c));
vkvg_destroy(c);
...

The output is:

0
0
0

So it means VKVG_STATUS_SUCCESS. Unfortunately I could not rebuild it in debug mode because I get these errors:

/usr/bin/ld: CMakeFiles/svg-viewer.dir/vkvg-svg/svg-viewer.c.o: in function `readSVG':
/tmp/vkvg/tests/vkvg-svg/svg-viewer.c:132: undefined reference to `LOG'
/usr/bin/ld: /tmp/vkvg/tests/vkvg-svg/svg-viewer.c:133: undefined reference to `LOG'
/usr/bin/ld: /tmp/vkvg/tests/vkvg-svg/svg-viewer.c:134: undefined reference to `LOG'
/usr/bin/ld: /tmp/vkvg/tests/vkvg-svg/svg-viewer.c:135: undefined reference to `LOG'
/usr/bin/ld: /tmp/vkvg/tests/vkvg-svg/svg-viewer.c:136: undefined reference to `LOG'
/usr/bin/ld: CMakeFiles/svg-viewer.dir/vkvg-svg/svg-viewer.c.o:/tmp/vkvg/tests/vkvg-svg/svg-viewer.c:137: more undefined references to `LOG' follow
collect2: error: ld returned 1 exit status
make[2]: *** [tests/CMakeFiles/svg-viewer.dir/build.make:112: tests/svg-viewer] Error 1
make[1]: *** [CMakeFiles/Makefile2:1633: tests/CMakeFiles/svg-viewer.dir/all] Error 2
make: *** [Makefile:156: all] Error 2

even if I did not enable VKVG_BUILD_TESTS and VKVG_TEST_DIRECT_DRAW. I ran these commands inside /tmp/vkvg to build it:

cd build
cmake -DCMAKE_INSTALL_PREFIX=/usr  \
        -DVKVG_USE_GLUTESS=true      \
        -DVKVG_BUILD_DOCS=true       \
        -DVKVG_USE_FONTCONFIG=true   \
        -DVKVG_USE_FREETYPE=true     \
        -DVKVG_USE_HARFBUZZ=true     \
        -DCMAKE_BUILD_TYPE=Debug     \
        -DENABLE_VALIDATION=true     \
        -DENABLE_DBG_UTILS=true      \
        -DENABLE_RENDERDOC=true      \
        -DENABLE_WIRED_FILL=true     \
        -DENABLE_PROFILING=true      \
        -DVKVG_DBG_STATS=true        \
        ..
make install

from vkvg.

jpbruyere avatar jpbruyere commented on May 24, 2024

you can disable svg to test, the latest cmakefile should disable build vkvg_svg tests (that's where the error is)
-DVKVG_SVG=false

from vkvg.

jpbruyere avatar jpbruyere commented on May 24, 2024

recommended options for tests:

cmake -DCMAKE_INSTALL_PREFIX=/usr  \
        -DVKVG_BUILD_TESTS=true      \
        -DVKVG_USE_GLUTESS=true      \
        -DVKVG_SVG=false \
        -DVKVG_BUILD_DOCS=false       \
        -DVKVG_USE_FONTCONFIG=true   \
        -DVKVG_USE_FREETYPE=true     \
        -DVKVG_USE_HARFBUZZ=true     \
        -DCMAKE_BUILD_TYPE=Debug     \
        -DENABLE_VALIDATION=true     \
        -DENABLE_DBG_UTILS=true      \
        -DENABLE_RENDERDOC=false      \
        -DENABLE_WIRED_FILL=false    \
        -DENABLE_PROFILING=false      \
        -DVKVG_DBG_STATS=false        \

don't forget to sync submodules if you checkout a more recent version: git submodule update --init --recursive

from vkvg.

Rubo3 avatar Rubo3 commented on May 24, 2024

Even with

    ...
    VkvgContext c = vkvg_create(s);
    printf("%d\n", vkvg_status(c));
    vkvg_load_font_from_path(c, "/usr/share/fonts/noto/NotoSans-Regular.ttf", "Noto Sans Regular");
    printf("%d\n", vkvg_status(c));
    vkvg_set_font_size(c, 32);
    printf("%d\n", vkvg_status(c));
    vkvg_set_source_rgb(c, 0.0, 0.0, 1.0);
    printf("%d\n", vkvg_status(c));
    vkvg_move_to(c, 10.0, 50.0);
    printf("%d\n", vkvg_status(c));
    vkvg_show_text(c, "Hello, world!");
    printf("%d\n", vkvg_status(c));
    vkvg_destroy(c);
    ...

the output is still

0
0
0
0
0
0

from vkvg.

Rubo3 avatar Rubo3 commented on May 24, 2024

recommended options for tests:

Thanks, now it builds but I get

vkvg.c: In function ‘main’:
vkvg.c:8:5: error: ‘vkvg_log_level’ undeclared (first use in this function)
    8 |     vkvg_log_level = VKVG_LOG_ERR;
      |     ^~~~~~~~~~~~~~
vkvg.c:8:5: note: each undeclared identifier is reported only once for each function it appears in

don't forget to sync submodules if you checkout a more recent version: git submodule update --init --recursive

Yes, I am building the latest versions of their master trees.

from vkvg.

jpbruyere avatar jpbruyere commented on May 24, 2024

if vkvg_log_level is not defined, it's not a debug build, it's in release mode, double check this. status 0 = success.

from vkvg.

Rubo3 avatar Rubo3 commented on May 24, 2024

That's what I thought, too, but I don't know why. I ran cmake with your recommended options, so it should be a debug build... that's strange.

from vkvg.

jpbruyere avatar jpbruyere commented on May 24, 2024

ensure you call cmake with the two dot from the build dir

cmake .. -DCMAKE_BUILD_TYPE=Debug

maybe, wipe out the build dir (rm -fr build) and start from a fresh one, sometime cmake cached variables are the problem

from vkvg.

Rubo3 avatar Rubo3 commented on May 24, 2024

Even after starting afresh and running

cmake .. -DCMAKE_BUILD_TYPE=Debug
make install

I get the same error... I really don't know why.

from vkvg.

jpbruyere avatar jpbruyere commented on May 24, 2024

I guess only the release lib are installed by the aur build system. And without log, you still have an empty image?
or maybe you have to define the DEBUG macro, which is not defined in vkvg.h, that comes from the cmake build system.
so :

#include <stdbool.h>
#include <vulkan/vulkan.h>
#define DEBUG   1 //<===
#include <vkvg.h>

int main(void) {
...

from vkvg.

Rubo3 avatar Rubo3 commented on May 24, 2024

I guess only the release lib are installed by the aur build system.

That's so strange though, in the PKGBUILD I specify the cmake and the make install commans, the build system in theory should just execute some bash functions.

And without log, you still have an empty image?

Yes.

from vkvg.

jpbruyere avatar jpbruyere commented on May 24, 2024

for the vkvg_log_level, you have to define DEBUG to 1, I've just tested it.

from vkvg.

jpbruyere avatar jpbruyere commented on May 24, 2024

can you send the image here

from vkvg.

jpbruyere avatar jpbruyere commented on May 24, 2024

you may try with: vkvg_log_level=VKVG_LOG_FULL, and give me the output

from vkvg.

Rubo3 avatar Rubo3 commented on May 24, 2024

This is the image:
hello

from vkvg.

jpbruyere avatar jpbruyere commented on May 24, 2024

and your full c source, plz

from vkvg.

Rubo3 avatar Rubo3 commented on May 24, 2024

for the vkvg_log_level, you have to define DEBUG to 1, I've just tested it.

Oh, it was so simple! Rip.

and your full c source, plz

Here you go:

#include <stdbool.h>
#include <stdio.h>

#include <vulkan/vulkan.h>

#define DEBUG 1
#include <vkvg.h>

int main(void) {
    vkvg_log_level = VKVG_LOG_FULL;

    VkvgDevice  d = vkvg_device_create(VK_SAMPLE_COUNT_8_BIT, false);
    VkvgSurface s = vkvg_surface_create(d, 240, 80);
    VkvgContext c = vkvg_create(s);
    printf("%d\n", vkvg_status(c));
    vkvg_set_source_rgb(c, 1, 0, 0);
    printf("%d\n", vkvg_status(c));
    vkvg_paint(c);
    printf("%d\n", vkvg_status(c));
    vkvg_destroy(c);
    printf("%d\n", vkvg_status(c));

    vkvg_destroy(c);
    vkvg_surface_write_to_png(s, "hello.png");
    vkvg_surface_destroy(s);
    return 0;
}

you may try with: vkvg_log_level=VKVG_LOG_FULL, and give me the output

CREATE Device: qFam = 0; qIdx = 0
CREATE Context: ctx = 0x55a41ce79650; surf = 0x55a41ca47120
CTX: _wait_flush_fence
CTX: _wait_flush_fence
INIT    ctx = 0x55a41ce79650; pathes:16 pts:1024 vch:4096 vbo:4096 ich:24576 ibo:24576
0
CTX: _update_cur_pattern: (nil) -> (nil)
0
_ensure_renderpass_is_started
START RENDER PASS: ctx = 0x55a41ce79650
Add Vertexf          0: pos:(   -1.0000,    -1.0000) uv:(    0.0000,    0.0000,   -1.0000) color:0xff0000ff 
Add Vertexf          1: pos:(    3.0000,    -1.0000) uv:(    0.0000,    0.0000,   -1.0000) color:0xff0000ff 
Add Vertexf          2: pos:(   -1.0000,     3.0000) uv:(    0.0000,    0.0000,   -1.0000) color:0xff0000ff 
0
DESTROY Context: ctx = 0x55a41ce79650 (status:0); surf = 0x55a41ca47120
END RENDER PASS: ctx = 0x55a41ce79650;
FLUSH CTX: ctx = 0x55a41ce79650; vertices = 3; indices = 0
CTX: _wait_flush_fence
CTX: _wait_and_submit_cmd
CTX: _wait_flush_fence
CTX: _reset_flush_fence
CTX: _wait_flush_fence
END     ctx = 0x55a41ce79650; pathes:16 pts:1024 vch:4096 vbo:4096 ich:24576 ibo:24576
0

Finally!

from vkvg.

jpbruyere avatar jpbruyere commented on May 24, 2024

You can run the samples? if you compile with VKVG_BUILD_TESTS (you need glfw3-dev)

from vkvg.

jpbruyere avatar jpbruyere commented on May 24, 2024

every thing looks good in the log, I get a red image here, strange.

from vkvg.

Rubo3 avatar Rubo3 commented on May 24, 2024

You can run the samples? if you compile with VKVG_BUILD_TESTS (you need glfw3-dev)

Yes, I compiled with -DCMAKE_BUILD_TYPE=Debug -DVKVG_BUILD_TESTS=true and ran some of them, no one gave me problems. While running pattern-transforms I noticed some debug informations, this was the output:

__________________________________________________________________________________________________________
| N° | Test File Name  |       Sub Test            | Iter | Size |   FPS   | Average | Median  | Sigma   |
|----|-----------------|---------------------------|------|------|---------|---------|---------|---------|
|  0 | rn_transforms   | pat_scale                 |  142 |    1 |   60.98 | 0.01640 | 0.01664 | 0.00312 |
|  1 | rn_transforms   | pat_rotate                |   46 |    1 |   62.74 | 0.01594 | 0.01659 | 0.00911 |
VAL: Validation Error: [ VUID-vkCmdBlitImage-dstImage-02000 ] Object 0: handle = 0x9638f80000000036, type = VK_OBJECT_TYPE_IMAGE; | MessageID = 0x86bc2a78 | In vkCmdBlitImage, VkFormatFeatureFlags (0x0001D401) does not support required feature VK_FORMAT_FEATURE_BLIT_DST_BIT for format 44 used by VkImage 0x9638f80000000036[] with tiling VK_IMAGE_TILING_LINEAR. The Vulkan spec states: The format features of dstImage must contain VK_FORMAT_FEATURE_BLIT_DST_BIT (https://vulkan.lunarg.com/doc/view/1.2.198.1/linux/1.2-extensions/vkspec.html#VUID-vkCmdBlitImage-dstImage-02000)
VAL: Validation Error: [ VUID-vkCmdBlitImage-dstImage-02000 ] Object 0: handle = 0x6871490000000055, type = VK_OBJECT_TYPE_IMAGE; | MessageID = 0x86bc2a78 | In vkCmdBlitImage, VkFormatFeatureFlags (0x0001D401) does not support required feature VK_FORMAT_FEATURE_BLIT_DST_BIT for format 44 used by VkImage 0x6871490000000055[] with tiling VK_IMAGE_TILING_LINEAR. The Vulkan spec states: The format features of dstImage must contain VK_FORMAT_FEATURE_BLIT_DST_BIT (https://vulkan.lunarg.com/doc/view/1.2.198.1/linux/1.2-extensions/vkspec.html#VUID-vkCmdBlitImage-dstImage-02000)
VAL: Validation Error: [ VUID-vkCmdBlitImage-dstImage-02000 ] Object 0: handle = 0x421a0f0000000074, type = VK_OBJECT_TYPE_IMAGE; | MessageID = 0x86bc2a78 | In vkCmdBlitImage, VkFormatFeatureFlags (0x0001D401) does not support required feature VK_FORMAT_FEATURE_BLIT_DST_BIT for format 44 used by VkImage 0x421a0f0000000074[] with tiling VK_IMAGE_TILING_LINEAR. The Vulkan spec states: The format features of dstImage must contain VK_FORMAT_FEATURE_BLIT_DST_BIT (https://vulkan.lunarg.com/doc/view/1.2.198.1/linux/1.2-extensions/vkspec.html#VUID-vkCmdBlitImage-dstImage-02000)
VAL: Validation Error: [ VUID-vkCmdBlitImage-dstImage-02000 ] Object 0: handle = 0xec25c90000000093, type = VK_OBJECT_TYPE_IMAGE; | MessageID = 0x86bc2a78 | In vkCmdBlitImage, VkFormatFeatureFlags (0x0001D401) does not support required feature VK_FORMAT_FEATURE_BLIT_DST_BIT for format 44 used by VkImage 0xec25c90000000093[] with tiling VK_IMAGE_TILING_LINEAR. The Vulkan spec states: The format features of dstImage must contain VK_FORMAT_FEATURE_BLIT_DST_BIT (https://vulkan.lunarg.com/doc/view/1.2.198.1/linux/1.2-extensions/vkspec.html#VUID-vkCmdBlitImage-dstImage-02000)
VAL: Validation Error: [ VUID-vkCmdBlitImage-dstImage-02000 ] Object 0: handle = 0x1dc49b00000000b2, type = VK_OBJECT_TYPE_IMAGE; | MessageID = 0x86bc2a78 | In vkCmdBlitImage, VkFormatFeatureFlags (0x0001D401) does not support required feature VK_FORMAT_FEATURE_BLIT_DST_BIT for format 44 used by VkImage 0x1dc49b00000000b2[] with tiling VK_IMAGE_TILING_LINEAR. The Vulkan spec states: The format features of dstImage must contain VK_FORMAT_FEATURE_BLIT_DST_BIT (https://vulkan.lunarg.com/doc/view/1.2.198.1/linux/1.2-extensions/vkspec.html#VUID-vkCmdBlitImage-dstImage-02000)
VAL: Validation Error: [ VUID-vkCmdBlitImage-dstImage-02000 ] Object 0: handle = 0xfb4f900000000d1, type = VK_OBJECT_TYPE_IMAGE; | MessageID = 0x86bc2a78 | In vkCmdBlitImage, VkFormatFeatureFlags (0x0001D401) does not support required feature VK_FORMAT_FEATURE_BLIT_DST_BIT for format 44 used by VkImage 0xfb4f900000000d1[] with tiling VK_IMAGE_TILING_LINEAR. The Vulkan spec states: The format features of dstImage must contain VK_FORMAT_FEATURE_BLIT_DST_BIT (https://vulkan.lunarg.com/doc/view/1.2.198.1/linux/1.2-extensions/vkspec.html#VUID-vkCmdBlitImage-dstImage-02000)
VAL: Validation Error: [ VUID-vkCmdBlitImage-dstImage-02000 ] Object 0: handle = 0x7e6d0700000000f0, type = VK_OBJECT_TYPE_IMAGE; | MessageID = 0x86bc2a78 | In vkCmdBlitImage, VkFormatFeatureFlags (0x0001D401) does not support required feature VK_FORMAT_FEATURE_BLIT_DST_BIT for format 44 used by VkImage 0x7e6d0700000000f0[] with tiling VK_IMAGE_TILING_LINEAR. The Vulkan spec states: The format features of dstImage must contain VK_FORMAT_FEATURE_BLIT_DST_BIT (https://vulkan.lunarg.com/doc/view/1.2.198.1/linux/1.2-extensions/vkspec.html#VUID-vkCmdBlitImage-dstImage-02000)
VAL: Validation Error: [ VUID-vkCmdBlitImage-dstImage-02000 ] Object 0: handle = 0x2c9fc9000000010f, type = VK_OBJECT_TYPE_IMAGE; | MessageID = 0x86bc2a78 | In vkCmdBlitImage, VkFormatFeatureFlags (0x0001D401) does not support required feature VK_FORMAT_FEATURE_BLIT_DST_BIT for format 44 used by VkImage 0x2c9fc9000000010f[] with tiling VK_IMAGE_TILING_LINEAR. The Vulkan spec states: The format features of dstImage must contain VK_FORMAT_FEATURE_BLIT_DST_BIT (https://vulkan.lunarg.com/doc/view/1.2.198.1/linux/1.2-extensions/vkspec.html#VUID-vkCmdBlitImage-dstImage-02000)
VAL: Validation Error: [ VUID-vkCmdBlitImage-dstImage-02000 ] Object 0: handle = 0xc2a18a000000012e, type = VK_OBJECT_TYPE_IMAGE; | MessageID = 0x86bc2a78 | In vkCmdBlitImage, VkFormatFeatureFlags (0x0001D401) does not support required feature VK_FORMAT_FEATURE_BLIT_DST_BIT for format 44 used by VkImage 0xc2a18a000000012e[] with tiling VK_IMAGE_TILING_LINEAR. The Vulkan spec states: The format features of dstImage must contain VK_FORMAT_FEATURE_BLIT_DST_BIT (https://vulkan.lunarg.com/doc/view/1.2.198.1/linux/1.2-extensions/vkspec.html#VUID-vkCmdBlitImage-dstImage-02000)
VAL: Validation Error: [ VUID-vkCmdBlitImage-dstImage-02000 ] Object 0: handle = 0xe8fb46000000014d, type = VK_OBJECT_TYPE_IMAGE; | MessageID = 0x86bc2a78 | In vkCmdBlitImage, VkFormatFeatureFlags (0x0001D401) does not support required feature VK_FORMAT_FEATURE_BLIT_DST_BIT for format 44 used by VkImage 0xe8fb46000000014d[] with tiling VK_IMAGE_TILING_LINEAR. The Vulkan spec states: The format features of dstImage must contain VK_FORMAT_FEATURE_BLIT_DST_BIT (https://vulkan.lunarg.com/doc/view/1.2.198.1/linux/1.2-extensions/vkspec.html#VUID-vkCmdBlitImage-dstImage-02000)
VAL: Validation Error: [ VUID-vkCmdBlitImage-dstImage-02000 ] Object 0: handle = 0xb730fe000000016c, type = VK_OBJECT_TYPE_IMAGE; | MessageID = 0x86bc2a78 | In vkCmdBlitImage, VkFormatFeatureFlags (0x0001D401) does not support required feature VK_FORMAT_FEATURE_BLIT_DST_BIT for format 44 used by VkImage 0xb730fe000000016c[] with tiling VK_IMAGE_TILING_LINEAR. The Vulkan spec states: The format features of dstImage must contain VK_FORMAT_FEATURE_BLIT_DST_BIT (https://vulkan.lunarg.com/doc/view/1.2.198.1/linux/1.2-extensions/vkspec.html#VUID-vkCmdBlitImage-dstImage-02000)
VAL: Validation Error: [ VUID-vkCmdBlitImage-dstImage-02000 ] Object 0: handle = 0x85695a000000018b, type = VK_OBJECT_TYPE_IMAGE; | MessageID = 0x86bc2a78 | In vkCmdBlitImage, VkFormatFeatureFlags (0x0001D401) does not support required feature VK_FORMAT_FEATURE_BLIT_DST_BIT for format 44 used by VkImage 0x85695a000000018b[] with tiling VK_IMAGE_TILING_LINEAR. The Vulkan spec states: The format features of dstImage must contain VK_FORMAT_FEATURE_BLIT_DST_BIT (https://vulkan.lunarg.com/doc/view/1.2.198.1/linux/1.2-extensions/vkspec.html#VUID-vkCmdBlitImage-dstImage-02000)
VAL: Validation Error: [ VUID-vkCmdBlitImage-dstImage-02000 ] Object 0: handle = 0xab038a00000001aa, type = VK_OBJECT_TYPE_IMAGE; | MessageID = 0x86bc2a78 | In vkCmdBlitImage, VkFormatFeatureFlags (0x0001D401) does not support required feature VK_FORMAT_FEATURE_BLIT_DST_BIT for format 44 used by VkImage 0xab038a00000001aa[] with tiling VK_IMAGE_TILING_LINEAR. The Vulkan spec states: The format features of dstImage must contain VK_FORMAT_FEATURE_BLIT_DST_BIT (https://vulkan.lunarg.com/doc/view/1.2.198.1/linux/1.2-extensions/vkspec.html#VUID-vkCmdBlitImage-dstImage-02000)
VAL: Validation Error: [ VUID-vkCmdBlitImage-dstImage-02000 ] Object 0: handle = 0xd12dce00000001c9, type = VK_OBJECT_TYPE_IMAGE; | MessageID = 0x86bc2a78 | In vkCmdBlitImage, VkFormatFeatureFlags (0x0001D401) does not support required feature VK_FORMAT_FEATURE_BLIT_DST_BIT for format 44 used by VkImage 0xd12dce00000001c9[] with tiling VK_IMAGE_TILING_LINEAR. The Vulkan spec states: The format features of dstImage must contain VK_FORMAT_FEATURE_BLIT_DST_BIT (https://vulkan.lunarg.com/doc/view/1.2.198.1/linux/1.2-extensions/vkspec.html#VUID-vkCmdBlitImage-dstImage-02000)
VAL: Validation Error: [ VUID-vkCmdBlitImage-dstImage-02000 ] Object 0: handle = 0xcfff0600000001e8, type = VK_OBJECT_TYPE_IMAGE; | MessageID = 0x86bc2a78 | In vkCmdBlitImage, VkFormatFeatureFlags (0x0001D401) does not support required feature VK_FORMAT_FEATURE_BLIT_DST_BIT for format 44 used by VkImage 0xcfff0600000001e8[] with tiling VK_IMAGE_TILING_LINEAR. The Vulkan spec states: The format features of dstImage must contain VK_FORMAT_FEATURE_BLIT_DST_BIT (https://vulkan.lunarg.com/doc/view/1.2.198.1/linux/1.2-extensions/vkspec.html#VUID-vkCmdBlitImage-dstImage-02000)
VAL: Validation Error: [ VUID-vkCmdBlitImage-dstImage-02000 ] Object 0: handle = 0x3dccfa0000000207, type = VK_OBJECT_TYPE_IMAGE; | MessageID = 0x86bc2a78 | In vkCmdBlitImage, VkFormatFeatureFlags (0x0001D401) does not support required feature VK_FORMAT_FEATURE_BLIT_DST_BIT for format 44 used by VkImage 0x3dccfa0000000207[] with tiling VK_IMAGE_TILING_LINEAR. The Vulkan spec states: The format features of dstImage must contain VK_FORMAT_FEATURE_BLIT_DST_BIT (https://vulkan.lunarg.com/doc/view/1.2.198.1/linux/1.2-extensions/vkspec.html#VUID-vkCmdBlitImage-dstImage-02000)
VAL: Validation Error: [ VUID-vkCmdBlitImage-dstImage-02000 ] Object 0: handle = 0x73649d0000000226, type = VK_OBJECT_TYPE_IMAGE; | MessageID = 0x86bc2a78 | In vkCmdBlitImage, VkFormatFeatureFlags (0x0001D401) does not support required feature VK_FORMAT_FEATURE_BLIT_DST_BIT for format 44 used by VkImage 0x73649d0000000226[] with tiling VK_IMAGE_TILING_LINEAR. The Vulkan spec states: The format features of dstImage must contain VK_FORMAT_FEATURE_BLIT_DST_BIT (https://vulkan.lunarg.com/doc/view/1.2.198.1/linux/1.2-extensions/vkspec.html#VUID-vkCmdBlitImage-dstImage-02000)
VAL: Validation Error: [ VUID-vkCmdBlitImage-dstImage-02000 ] Object 0: handle = 0x1a87c70000000245, type = VK_OBJECT_TYPE_IMAGE; | MessageID = 0x86bc2a78 | In vkCmdBlitImage, VkFormatFeatureFlags (0x0001D401) does not support required feature VK_FORMAT_FEATURE_BLIT_DST_BIT for format 44 used by VkImage 0x1a87c70000000245[] with tiling VK_IMAGE_TILING_LINEAR. The Vulkan spec states: The format features of dstImage must contain VK_FORMAT_FEATURE_BLIT_DST_BIT (https://vulkan.lunarg.com/doc/view/1.2.198.1/linux/1.2-extensions/vkspec.html#VUID-vkCmdBlitImage-dstImage-02000)
VAL: Validation Error: [ VUID-vkCmdBlitImage-dstImage-02000 ] Object 0: handle = 0x20aa0d0000000264, type = VK_OBJECT_TYPE_IMAGE; | MessageID = 0x86bc2a78 | In vkCmdBlitImage, VkFormatFeatureFlags (0x0001D401) does not support required feature VK_FORMAT_FEATURE_BLIT_DST_BIT for format 44 used by VkImage 0x20aa0d0000000264[] with tiling VK_IMAGE_TILING_LINEAR. The Vulkan spec states: The format features of dstImage must contain VK_FORMAT_FEATURE_BLIT_DST_BIT (https://vulkan.lunarg.com/doc/view/1.2.198.1/linux/1.2-extensions/vkspec.html#VUID-vkCmdBlitImage-dstImage-02000)
VAL: Validation Error: [ VUID-vkCmdBlitImage-dstImage-02000 ] Object 0: handle = 0xf6f34b0000000283, type = VK_OBJECT_TYPE_IMAGE; | MessageID = 0x86bc2a78 | In vkCmdBlitImage, VkFormatFeatureFlags (0x0001D401) does not support required feature VK_FORMAT_FEATURE_BLIT_DST_BIT for format 44 used by VkImage 0xf6f34b0000000283[] with tiling VK_IMAGE_TILING_LINEAR. The Vulkan spec states: The format features of dstImage must contain VK_FORMAT_FEATURE_BLIT_DST_BIT (https://vulkan.lunarg.com/doc/view/1.2.198.1/linux/1.2-extensions/vkspec.html#VUID-vkCmdBlitImage-dstImage-02000)
VAL: Validation Error: [ VUID-vkCmdBlitImage-dstImage-02000 ] Object 0: handle = 0xb4c88500000002a2, type = VK_OBJECT_TYPE_IMAGE; | MessageID = 0x86bc2a78 | In vkCmdBlitImage, VkFormatFeatureFlags (0x0001D401) does not support required feature VK_FORMAT_FEATURE_BLIT_DST_BIT for format 44 used by VkImage 0xb4c88500000002a2[] with tiling VK_IMAGE_TILING_LINEAR. The Vulkan spec states: The format features of dstImage must contain VK_FORMAT_FEATURE_BLIT_DST_BIT (https://vulkan.lunarg.com/doc/view/1.2.198.1/linux/1.2-extensions/vkspec.html#VUID-vkCmdBlitImage-dstImage-02000)
VAL: Validation Error: [ VUID-vkCmdBlitImage-dstImage-02000 ] Object 0: handle = 0x62605f00000002c1, type = VK_OBJECT_TYPE_IMAGE; | MessageID = 0x86bc2a78 | In vkCmdBlitImage, VkFormatFeatureFlags (0x0001D401) does not support required feature VK_FORMAT_FEATURE_BLIT_DST_BIT for format 44 used by VkImage 0x62605f00000002c1[] with tiling VK_IMAGE_TILING_LINEAR. The Vulkan spec states: The format features of dstImage must contain VK_FORMAT_FEATURE_BLIT_DST_BIT (https://vulkan.lunarg.com/doc/view/1.2.198.1/linux/1.2-extensions/vkspec.html#VUID-vkCmdBlitImage-dstImage-02000)
VAL: Validation Error: [ VUID-vkCmdBlitImage-dstImage-02000 ] Object 0: handle = 0x980b0500000002e0, type = VK_OBJECT_TYPE_IMAGE; | MessageID = 0x86bc2a78 | In vkCmdBlitImage, VkFormatFeatureFlags (0x0001D401) does not support required feature VK_FORMAT_FEATURE_BLIT_DST_BIT for format 44 used by VkImage 0x980b0500000002e0[] with tiling VK_IMAGE_TILING_LINEAR. The Vulkan spec states: The format features of dstImage must contain VK_FORMAT_FEATURE_BLIT_DST_BIT (https://vulkan.lunarg.com/doc/view/1.2.198.1/linux/1.2-extensions/vkspec.html#VUID-vkCmdBlitImage-dstImage-02000)
VAL: Validation Error: [ VUID-vkCmdBlitImage-dstImage-02000 ] Object 0: handle = 0x8e31cb00000002ff, type = VK_OBJECT_TYPE_IMAGE; | MessageID = 0x86bc2a78 | In vkCmdBlitImage, VkFormatFeatureFlags (0x0001D401) does not support required feature VK_FORMAT_FEATURE_BLIT_DST_BIT for format 44 used by VkImage 0x8e31cb00000002ff[] with tiling VK_IMAGE_TILING_LINEAR. The Vulkan spec states: The format features of dstImage must contain VK_FORMAT_FEATURE_BLIT_DST_BIT (https://vulkan.lunarg.com/doc/view/1.2.198.1/linux/1.2-extensions/vkspec.html#VUID-vkCmdBlitImage-dstImage-02000)
VAL: Validation Error: [ VUID-vkCmdBlitImage-dstImage-02000 ] Object 0: handle = 0xfdf68c000000031e, type = VK_OBJECT_TYPE_IMAGE; | MessageID = 0x86bc2a78 | In vkCmdBlitImage, VkFormatFeatureFlags (0x0001D401) does not support required feature VK_FORMAT_FEATURE_BLIT_DST_BIT for format 44 used by VkImage 0xfdf68c000000031e[] with tiling VK_IMAGE_TILING_LINEAR. The Vulkan spec states: The format features of dstImage must contain VK_FORMAT_FEATURE_BLIT_DST_BIT (https://vulkan.lunarg.com/doc/view/1.2.198.1/linux/1.2-extensions/vkspec.html#VUID-vkCmdBlitImage-dstImage-02000)
VAL: Validation Error: [ VUID-vkCmdBlitImage-dstImage-02000 ] Object 0: handle = 0xcbc4c4000000033d, type = VK_OBJECT_TYPE_IMAGE; | MessageID = 0x86bc2a78 | In vkCmdBlitImage, VkFormatFeatureFlags (0x0001D401) does not support required feature VK_FORMAT_FEATURE_BLIT_DST_BIT for format 44 used by VkImage 0xcbc4c4000000033d[] with tiling VK_IMAGE_TILING_LINEAR. The Vulkan spec states: The format features of dstImage must contain VK_FORMAT_FEATURE_BLIT_DST_BIT (https://vulkan.lunarg.com/doc/view/1.2.198.1/linux/1.2-extensions/vkspec.html#VUID-vkCmdBlitImage-dstImage-02000)
VAL: Validation Error: [ VUID-vkCmdBlitImage-dstImage-02000 ] Object 0: handle = 0x505c1c000000035c, type = VK_OBJECT_TYPE_IMAGE; | MessageID = 0x86bc2a78 | In vkCmdBlitImage, VkFormatFeatureFlags (0x0001D401) does not support required feature VK_FORMAT_FEATURE_BLIT_DST_BIT for format 44 used by VkImage 0x505c1c000000035c[] with tiling VK_IMAGE_TILING_LINEAR. The Vulkan spec states: The format features of dstImage must contain VK_FORMAT_FEATURE_BLIT_DST_BIT (https://vulkan.lunarg.com/doc/view/1.2.198.1/linux/1.2-extensions/vkspec.html#VUID-vkCmdBlitImage-dstImage-02000)
VAL: Validation Error: [ VUID-vkCmdBlitImage-dstImage-02000 ] Object 0: handle = 0x668f3c000000037b, type = VK_OBJECT_TYPE_IMAGE; | MessageID = 0x86bc2a78 | In vkCmdBlitImage, VkFormatFeatureFlags (0x0001D401) does not support required feature VK_FORMAT_FEATURE_BLIT_DST_BIT for format 44 used by VkImage 0x668f3c000000037b[] with tiling VK_IMAGE_TILING_LINEAR. The Vulkan spec states: The format features of dstImage must contain VK_FORMAT_FEATURE_BLIT_DST_BIT (https://vulkan.lunarg.com/doc/view/1.2.198.1/linux/1.2-extensions/vkspec.html#VUID-vkCmdBlitImage-dstImage-02000)
VAL: Validation Error: [ VUID-vkCmdBlitImage-dstImage-02000 ] Object 0: handle = 0x4bd84000000039a, type = VK_OBJECT_TYPE_IMAGE; | MessageID = 0x86bc2a78 | In vkCmdBlitImage, VkFormatFeatureFlags (0x0001D401) does not support required feature VK_FORMAT_FEATURE_BLIT_DST_BIT for format 44 used by VkImage 0x4bd84000000039a[] with tiling VK_IMAGE_TILING_LINEAR. The Vulkan spec states: The format features of dstImage must contain VK_FORMAT_FEATURE_BLIT_DST_BIT (https://vulkan.lunarg.com/doc/view/1.2.198.1/linux/1.2-extensions/vkspec.html#VUID-vkCmdBlitImage-dstImage-02000)
VAL: Validation Error: [ VUID-vkCmdBlitImage-dstImage-02000 ] Object 0: handle = 0xf2ea4c00000003b9, type = VK_OBJECT_TYPE_IMAGE; | MessageID = 0x86bc2a78 | In vkCmdBlitImage, VkFormatFeatureFlags (0x0001D401) does not support required feature VK_FORMAT_FEATURE_BLIT_DST_BIT for format 44 used by VkImage 0xf2ea4c00000003b9[] with tiling VK_IMAGE_TILING_LINEAR. The Vulkan spec states: The format features of dstImage must contain VK_FORMAT_FEATURE_BLIT_DST_BIT (https://vulkan.lunarg.com/doc/view/1.2.198.1/linux/1.2-extensions/vkspec.html#VUID-vkCmdBlitImage-dstImage-02000)
VAL: Validation Error: [ VUID-vkCmdBlitImage-dstImage-02000 ] Object 0: handle = 0x28c10400000003d8, type = VK_OBJECT_TYPE_IMAGE; | MessageID = 0x86bc2a78 | In vkCmdBlitImage, VkFormatFeatureFlags (0x0001D401) does not support required feature VK_FORMAT_FEATURE_BLIT_DST_BIT for format 44 used by VkImage 0x28c10400000003d8[] with tiling VK_IMAGE_TILING_LINEAR. The Vulkan spec states: The format features of dstImage must contain VK_FORMAT_FEATURE_BLIT_DST_BIT (https://vulkan.lunarg.com/doc/view/1.2.198.1/linux/1.2-extensions/vkspec.html#VUID-vkCmdBlitImage-dstImage-02000)
VAL: Validation Error: [ VUID-vkCmdBlitImage-dstImage-02000 ] Object 0: handle = 0x41584500000003f7, type = VK_OBJECT_TYPE_IMAGE; | MessageID = 0x86bc2a78 | In vkCmdBlitImage, VkFormatFeatureFlags (0x0001D401) does not support required feature VK_FORMAT_FEATURE_BLIT_DST_BIT for format 44 used by VkImage 0x41584500000003f7[] with tiling VK_IMAGE_TILING_LINEAR. The Vulkan spec states: The format features of dstImage must contain VK_FORMAT_FEATURE_BLIT_DST_BIT (https://vulkan.lunarg.com/doc/view/1.2.198.1/linux/1.2-extensions/vkspec.html#VUID-vkCmdBlitImage-dstImage-02000)
VAL: Validation Error: [ VUID-vkCmdBlitImage-dstImage-02000 ] Object 0: handle = 0x6f73bf0000000416, type = VK_OBJECT_TYPE_IMAGE; | MessageID = 0x86bc2a78 | In vkCmdBlitImage, VkFormatFeatureFlags (0x0001D401) does not support required feature VK_FORMAT_FEATURE_BLIT_DST_BIT for format 44 used by VkImage 0x6f73bf0000000416[] with tiling VK_IMAGE_TILING_LINEAR. The Vulkan spec states: The format features of dstImage must contain VK_FORMAT_FEATURE_BLIT_DST_BIT (https://vulkan.lunarg.com/doc/view/1.2.198.1/linux/1.2-extensions/vkspec.html#VUID-vkCmdBlitImage-dstImage-02000)
VAL: Validation Error: [ VUID-vkCmdBlitImage-dstImage-02000 ] Object 0: handle = 0xbd39c50000000435, type = VK_OBJECT_TYPE_IMAGE; | MessageID = 0x86bc2a78 | In vkCmdBlitImage, VkFormatFeatureFlags (0x0001D401) does not support required feature VK_FORMAT_FEATURE_BLIT_DST_BIT for format 44 used by VkImage 0xbd39c50000000435[] with tiling VK_IMAGE_TILING_LINEAR. The Vulkan spec states: The format features of dstImage must contain VK_FORMAT_FEATURE_BLIT_DST_BIT (https://vulkan.lunarg.com/doc/view/1.2.198.1/linux/1.2-extensions/vkspec.html#VUID-vkCmdBlitImage-dstImage-02000)
VAL: Validation Error: [ VUID-vkCmdBlitImage-dstImage-02000 ] Object 0: handle = 0x83ee030000000454, type = VK_OBJECT_TYPE_IMAGE; | MessageID = 0x86bc2a78 | In vkCmdBlitImage, VkFormatFeatureFlags (0x0001D401) does not support required feature VK_FORMAT_FEATURE_BLIT_DST_BIT for format 44 used by VkImage 0x83ee030000000454[] with tiling VK_IMAGE_TILING_LINEAR. The Vulkan spec states: The format features of dstImage must contain VK_FORMAT_FEATURE_BLIT_DST_BIT (https://vulkan.lunarg.com/doc/view/1.2.198.1/linux/1.2-extensions/vkspec.html#VUID-vkCmdBlitImage-dstImage-02000)
VAL: Validation Error: [ VUID-vkCmdBlitImage-dstImage-02000 ] Object 0: handle = 0x99dacd0000000473, type = VK_OBJECT_TYPE_IMAGE; | MessageID = 0x86bc2a78 | In vkCmdBlitImage, VkFormatFeatureFlags (0x0001D401) does not support required feature VK_FORMAT_FEATURE_BLIT_DST_BIT for format 44 used by VkImage 0x99dacd0000000473[] with tiling VK_IMAGE_TILING_LINEAR. The Vulkan spec states: The format features of dstImage must contain VK_FORMAT_FEATURE_BLIT_DST_BIT (https://vulkan.lunarg.com/doc/view/1.2.198.1/linux/1.2-extensions/vkspec.html#VUID-vkCmdBlitImage-dstImage-02000)
VAL: Validation Error: [ VUID-vkCmdBlitImage-dstImage-02000 ] Object 0: handle = 0x5754870000000492, type = VK_OBJECT_TYPE_IMAGE; | MessageID = 0x86bc2a78 | In vkCmdBlitImage, VkFormatFeatureFlags (0x0001D401) does not support required feature VK_FORMAT_FEATURE_BLIT_DST_BIT for format 44 used by VkImage 0x5754870000000492[] with tiling VK_IMAGE_TILING_LINEAR. The Vulkan spec states: The format features of dstImage must contain VK_FORMAT_FEATURE_BLIT_DST_BIT (https://vulkan.lunarg.com/doc/view/1.2.198.1/linux/1.2-extensions/vkspec.html#VUID-vkCmdBlitImage-dstImage-02000)
VAL: Validation Error: [ VUID-vkCmdBlitImage-dstImage-02000 ] Object 0: handle = 0x4577bd00000004b1, type = VK_OBJECT_TYPE_IMAGE; | MessageID = 0x86bc2a78 | In vkCmdBlitImage, VkFormatFeatureFlags (0x0001D401) does not support required feature VK_FORMAT_FEATURE_BLIT_DST_BIT for format 44 used by VkImage 0x4577bd00000004b1[] with tiling VK_IMAGE_TILING_LINEAR. The Vulkan spec states: The format features of dstImage must contain VK_FORMAT_FEATURE_BLIT_DST_BIT (https://vulkan.lunarg.com/doc/view/1.2.198.1/linux/1.2-extensions/vkspec.html#VUID-vkCmdBlitImage-dstImage-02000)
VAL: Validation Error: [ VUID-vkCmdBlitImage-dstImage-02000 ] Object 0: handle = 0x3a850300000004d0, type = VK_OBJECT_TYPE_IMAGE; | MessageID = 0x86bc2a78 | In vkCmdBlitImage, VkFormatFeatureFlags (0x0001D401) does not support required feature VK_FORMAT_FEATURE_BLIT_DST_BIT for format 44 used by VkImage 0x3a850300000004d0[] with tiling VK_IMAGE_TILING_LINEAR. The Vulkan spec states: The format features of dstImage must contain VK_FORMAT_FEATURE_BLIT_DST_BIT (https://vulkan.lunarg.com/doc/view/1.2.198.1/linux/1.2-extensions/vkspec.html#VUID-vkCmdBlitImage-dstImage-02000)
|  2 | rn_transforms   | img_scale                 |   39 |    1 |   63.21 | 0.01582 | 0.01658 | 0.00607 |

from vkvg.

Rubo3 avatar Rubo3 commented on May 24, 2024

Just in case, here is the output from the other example:

CREATE Device: qFam = 0; qIdx = 0
CREATE Context: ctx = 0x5605bc7367c0; surf = 0x5605bc73def0
CTX: _wait_flush_fence
CTX: _wait_flush_fence
INIT    ctx = 0x5605bc7367c0; pathes:16 pts:1024 vch:4096 vbo:4096 ich:24576 ibo:24576
0
0
0
CTX: _update_cur_pattern: (nil) -> (nil)
0
        CMD: move_to: 10.000000,50.000000
_add_point: (10.000000, 50.000000)
0
CMD: show_text:
Add Vertex           0: pos:(   13.0000,    26.0000) uv:(    0.0000,    0.0000,    0.0000) color:0xffff0000 
Add Vertex           1: pos:(   13.0000,    50.0000) uv:(    0.0000,    0.0234,    0.0000) color:0xffff0000 
Add Vertex           2: pos:(   31.0000,    26.0000) uv:(    0.0176,    0.0000,    0.0000) color:0xffff0000 
Add Vertex           3: pos:(   31.0000,    50.0000) uv:(    0.0176,    0.0234,    0.0000) color:0xffff0000 
Rectangle IDX: 0 2 1 | 1 2 3 (count=6)
Add Vertex           4: pos:(   34.0000,    32.0000) uv:(    0.0176,    0.0000,    0.0000) color:0xffff0000 
Add Vertex           5: pos:(   34.0000,    50.0000) uv:(    0.0176,    0.0176,    0.0000) color:0xffff0000 
Add Vertex           6: pos:(   50.0000,    32.0000) uv:(    0.0332,    0.0000,    0.0000) color:0xffff0000 
Add Vertex           7: pos:(   50.0000,    50.0000) uv:(    0.0332,    0.0176,    0.0000) color:0xffff0000 
Rectangle IDX: 4 6 5 | 5 6 7 (count=12)
Add Vertex           8: pos:(   53.0000,    25.0000) uv:(    0.0332,    0.0000,    0.0000) color:0xffff0000 
Add Vertex           9: pos:(   53.0000,    50.0000) uv:(    0.0332,    0.0244,    0.0000) color:0xffff0000 
Add Vertex          10: pos:(   57.0000,    25.0000) uv:(    0.0371,    0.0000,    0.0000) color:0xffff0000 
Add Vertex          11: pos:(   57.0000,    50.0000) uv:(    0.0371,    0.0244,    0.0000) color:0xffff0000 
Rectangle IDX: 8 10 9 | 9 10 11 (count=18)
Add Vertex          12: pos:(   61.0000,    25.0000) uv:(    0.0332,    0.0000,    0.0000) color:0xffff0000 
Add Vertex          13: pos:(   61.0000,    50.0000) uv:(    0.0332,    0.0244,    0.0000) color:0xffff0000 
Add Vertex          14: pos:(   65.0000,    25.0000) uv:(    0.0371,    0.0000,    0.0000) color:0xffff0000 
Add Vertex          15: pos:(   65.0000,    50.0000) uv:(    0.0371,    0.0244,    0.0000) color:0xffff0000 
Rectangle IDX: 12 14 13 | 13 14 15 (count=24)
Add Vertex          16: pos:(   68.0000,    32.0000) uv:(    0.0371,    0.0000,    0.0000) color:0xffff0000 
Add Vertex          17: pos:(   68.0000,    50.0000) uv:(    0.0371,    0.0176,    0.0000) color:0xffff0000 
Add Vertex          18: pos:(   85.0000,    32.0000) uv:(    0.0537,    0.0000,    0.0000) color:0xffff0000 
Add Vertex          19: pos:(   85.0000,    50.0000) uv:(    0.0537,    0.0176,    0.0000) color:0xffff0000 
Rectangle IDX: 16 18 17 | 17 18 19 (count=30)
Add Vertex          20: pos:(   87.0000,    46.0000) uv:(    0.0537,    0.0000,    0.0000) color:0xffff0000 
Add Vertex          21: pos:(   87.0000,    54.0000) uv:(    0.0537,    0.0078,    0.0000) color:0xffff0000 
Add Vertex          22: pos:(   93.0000,    46.0000) uv:(    0.0596,    0.0000,    0.0000) color:0xffff0000 
Add Vertex          23: pos:(   93.0000,    54.0000) uv:(    0.0596,    0.0078,    0.0000) color:0xffff0000 
Rectangle IDX: 20 22 21 | 21 22 23 (count=36)
Add Vertex          24: pos:(   94.0000,    50.0000) uv:(    0.0596,    0.0000,    0.0000) color:0xffff0000 
Add Vertex          25: pos:(   94.0000,    50.0000) uv:(    0.0596,    0.0000,    0.0000) color:0xffff0000 
Add Vertex          26: pos:(   94.0000,    50.0000) uv:(    0.0596,    0.0000,    0.0000) color:0xffff0000 
Add Vertex          27: pos:(   94.0000,    50.0000) uv:(    0.0596,    0.0000,    0.0000) color:0xffff0000 
Rectangle IDX: 24 26 25 | 25 26 27 (count=42)
Add Vertex          28: pos:(  102.0000,    32.0000) uv:(    0.0596,    0.0000,    0.0000) color:0xffff0000 
Add Vertex          29: pos:(  102.0000,    50.0000) uv:(    0.0596,    0.0176,    0.0000) color:0xffff0000 
Add Vertex          30: pos:(  127.0000,    32.0000) uv:(    0.0840,    0.0000,    0.0000) color:0xffff0000 
Add Vertex          31: pos:(  127.0000,    50.0000) uv:(    0.0840,    0.0176,    0.0000) color:0xffff0000 
Rectangle IDX: 28 30 29 | 29 30 31 (count=48)
Add Vertex          32: pos:(  128.0000,    32.0000) uv:(    0.0371,    0.0000,    0.0000) color:0xffff0000 
Add Vertex          33: pos:(  128.0000,    50.0000) uv:(    0.0371,    0.0176,    0.0000) color:0xffff0000 
Add Vertex          34: pos:(  145.0000,    32.0000) uv:(    0.0537,    0.0000,    0.0000) color:0xffff0000 
Add Vertex          35: pos:(  145.0000,    50.0000) uv:(    0.0537,    0.0176,    0.0000) color:0xffff0000 
Rectangle IDX: 32 34 33 | 33 34 35 (count=54)
Add Vertex          36: pos:(  148.0000,    32.0000) uv:(    0.0840,    0.0000,    0.0000) color:0xffff0000 
Add Vertex          37: pos:(  148.0000,    50.0000) uv:(    0.0840,    0.0176,    0.0000) color:0xffff0000 
Add Vertex          38: pos:(  159.0000,    32.0000) uv:(    0.0947,    0.0000,    0.0000) color:0xffff0000 
Add Vertex          39: pos:(  159.0000,    50.0000) uv:(    0.0947,    0.0176,    0.0000) color:0xffff0000 
Rectangle IDX: 36 38 37 | 37 38 39 (count=60)
Add Vertex          40: pos:(  161.0000,    25.0000) uv:(    0.0332,    0.0000,    0.0000) color:0xffff0000 
Add Vertex          41: pos:(  161.0000,    50.0000) uv:(    0.0332,    0.0244,    0.0000) color:0xffff0000 
Add Vertex          42: pos:(  165.0000,    25.0000) uv:(    0.0371,    0.0000,    0.0000) color:0xffff0000 
Add Vertex          43: pos:(  165.0000,    50.0000) uv:(    0.0371,    0.0244,    0.0000) color:0xffff0000 
Rectangle IDX: 40 42 41 | 41 42 43 (count=66)
Add Vertex          44: pos:(  168.0000,    25.0000) uv:(    0.0947,    0.0000,    0.0000) color:0xffff0000 
Add Vertex          45: pos:(  168.0000,    50.0000) uv:(    0.0947,    0.0244,    0.0000) color:0xffff0000 
Add Vertex          46: pos:(  184.0000,    25.0000) uv:(    0.1104,    0.0000,    0.0000) color:0xffff0000 
Add Vertex          47: pos:(  184.0000,    50.0000) uv:(    0.1104,    0.0244,    0.0000) color:0xffff0000 
Rectangle IDX: 44 46 45 | 45 46 47 (count=72)
Add Vertex          48: pos:(  188.0000,    26.0000) uv:(    0.1104,    0.0000,    0.0000) color:0xffff0000 
Add Vertex          49: pos:(  188.0000,    50.0000) uv:(    0.1104,    0.0234,    0.0000) color:0xffff0000 
Add Vertex          50: pos:(  193.0000,    26.0000) uv:(    0.1152,    0.0000,    0.0000) color:0xffff0000 
Add Vertex          51: pos:(  193.0000,    50.0000) uv:(    0.1152,    0.0234,    0.0000) color:0xffff0000 
Rectangle IDX: 48 50 49 | 49 50 51 (count=78)
        CMD: move_to: 194.000000,50.000000
_add_point: (194.000000, 50.000000)
_flush_chars_to_tex pen(0, 0)
0
DESTROY Context: ctx = 0x5605bc7367c0 (status:0); surf = 0x5605bc73def0
_ensure_renderpass_is_started
START RENDER PASS: ctx = 0x5605bc7367c0
RECORD DRAW CMD: ctx = 0x5605bc7367c0; vertices = 52; indices = 78 (vxOff = 0 idxStart = 0 idxTot = 78 )
END RENDER PASS: ctx = 0x5605bc7367c0;
FLUSH CTX: ctx = 0x5605bc7367c0; vertices = 52; indices = 78
CTX: _wait_flush_fence
CTX: _wait_and_submit_cmd
CTX: _wait_flush_fence
CTX: _reset_flush_fence
CTX: _wait_flush_fence
END     ctx = 0x5605bc7367c0; pathes:16 pts:1024 vch:4096 vbo:4096 ich:24576 ibo:24576

from vkvg.

jpbruyere avatar jpbruyere commented on May 24, 2024

and the test output on screen is ok, not blank?

from vkvg.

Rubo3 avatar Rubo3 commented on May 24, 2024

Sure, nothing strange.

from vkvg.

jpbruyere avatar jpbruyere commented on May 24, 2024

so the problem surely comes from the vkvg_device_create. In the tests, I init vulkan to 1.2, in vkvg_device_create it's 1.1. I've just pushed on master vkvg_device_create with 1.2 vulkan version, that's the only diff I see.

from vkvg.

Rubo3 avatar Rubo3 commented on May 24, 2024

I rebuilt it against the new version and I still get an empty image... maybe the problem comes from my graphics card driver's Vulkan implementation?

from vkvg.

jpbruyere avatar jpbruyere commented on May 24, 2024

There are some fixes in the tests device creation for scalar block layout, also the validation layer here is not enabled. I'll try to make a common method for this part, I'll notify you when it's ready.

from vkvg.

jpbruyere avatar jpbruyere commented on May 24, 2024

I've pushed the fix on master.

from vkvg.

Rubo3 avatar Rubo3 commented on May 24, 2024

Ok, thank you very much!

from vkvg.

Rubo3 avatar Rubo3 commented on May 24, 2024

I've pushed the fix on master.

...still no image nor text, but this time I got validation errors printed, for example in the case of the would-be-red image:

CREATE Context: ctx = 0x555786c7e6c0; surf = 0x555787256bd0
CTX: _wait_flush_fence
CTX: _wait_flush_fence
INIT    ctx = 0x555786c7e6c0; pathes:16 pts:1024 vch:4096 vbo:4096 ich:24576 ibo:24576
0
CTX: _update_cur_pattern: (nil) -> (nil)
0
_ensure_renderpass_is_started
START RENDER PASS: ctx = 0x555786c7e6c0
Add Vertexf          0: pos:(   -1.0000,    -1.0000) uv:(    0.0000,    0.0000,   -1.0000) color:0xff0000ff 
Add Vertexf          1: pos:(    3.0000,    -1.0000) uv:(    0.0000,    0.0000,   -1.0000) color:0xff0000ff 
Add Vertexf          2: pos:(   -1.0000,     3.0000) uv:(    0.0000,    0.0000,   -1.0000) color:0xff0000ff 
0
DESTROY Context: ctx = 0x555786c7e6c0 (status:0); surf = 0x555787256bd0
END RENDER PASS: ctx = 0x555786c7e6c0;
FLUSH CTX: ctx = 0x555786c7e6c0; vertices = 3; indices = 0
CTX: _wait_flush_fence
CTX: _wait_and_submit_cmd
CTX: _wait_flush_fence
CTX: _reset_flush_fence
CTX: _wait_flush_fence
END     ctx = 0x555786c7e6c0; pathes:16 pts:1024 vch:4096 vbo:4096 ich:24576 ibo:24576
0
VAL: Validation Error: [ VUID-vkCmdPipelineBarrier-srcAccessMask-02815 ] Object 0: handle = 0x555786d37a10, name = Device Cmd Buff, type = VK_OBJECT_TYPE_COMMAND_BUFFER; | MessageID = 0x24d88c2b | vkCmdPipelineBarrier(): .pImageMemoryBarriers[0].srcAccessMask bit VK_ACCESS_COLOR_ATTACHMENT_WRITE_BIT is not supported by stage mask (VK_PIPELINE_STAGE_TOP_OF_PIPE_BIT). The Vulkan spec states: The srcAccessMask member of each element of pMemoryBarriers must only include access flags that are supported by one or more of the pipeline stages in srcStageMask, as specified in the table of supported access types (https://vulkan.lunarg.com/doc/view/1.2.198.1/linux/1.2-extensions/vkspec.html#VUID-vkCmdPipelineBarrier-srcAccessMask-02815)
VAL: Validation Error: [ VUID-vkCmdBlitImage-dstImage-02000 ] Object 0: handle = 0xa21a4e0000000030, type = VK_OBJECT_TYPE_IMAGE; | MessageID = 0x86bc2a78 | In vkCmdBlitImage, VkFormatFeatureFlags (0x0001D401) does not support required feature VK_FORMAT_FEATURE_BLIT_DST_BIT for format 43 used by VkImage 0xa21a4e0000000030[] with tiling VK_IMAGE_TILING_LINEAR. The Vulkan spec states: The format features of dstImage must contain VK_FORMAT_FEATURE_BLIT_DST_BIT (https://vulkan.lunarg.com/doc/view/1.2.198.1/linux/1.2-extensions/vkspec.html#VUID-vkCmdBlitImage-dstImage-02000)

The only thing that changes in the validation errors in the would-be-text image example is the handle, in which case is 0x555786d37a10, otherwise the errors are exactly the same.

from vkvg.

jpbruyere avatar jpbruyere commented on May 24, 2024

I added the validation layer in debug mode. The last validation error is the problem, that's the final blit to dest image. Your driver miss the blit_dest feature for VK_FORMAT_R8G8B8A8_SRGB, I'll add a test there, but the final colors on the png will not be the same, I'notify when it's ready.

from vkvg.

jpbruyere avatar jpbruyere commented on May 24, 2024

I've pushed a fix on master: commit:4915cbe

from vkvg.

Rubo3 avatar Rubo3 commented on May 24, 2024

Thanks! I rebuilt it, now the image isn't even being created, the debug message says: no suitable image format for png write. Does this mean there's nothing else to do?

from vkvg.

jpbruyere avatar jpbruyere commented on May 24, 2024

I'll investigate the question, but I test 2 very common image formats, one possibility is that blitting may only be done with optimal image format on your driver. Can you send me vulkaninfo.html returned by the command vulkaninfo --html ? So I can check wich formats are supported on your driver.

from vkvg.

Rubo3 avatar Rubo3 commented on May 24, 2024

Sure, here you go: vulkaninfo.txt (I renamed it to *.txt because otherwise GitHub would not allow me to upload it).

from vkvg.

jpbruyere avatar jpbruyere commented on May 24, 2024

that's what I guessed, blit dest feature is only available for optimal tilling, I'll prepare a fix, that should be ok after that.

from vkvg.

jpbruyere avatar jpbruyere commented on May 24, 2024

I've pushed the fix: commit:f46d8a4

from vkvg.

Rubo3 avatar Rubo3 commented on May 24, 2024

What do you mean by "some stuffs"?
Also, I think we can mark this issue as closed now!

from vkvg.

jpbruyere avatar jpbruyere commented on May 24, 2024

If you drive some tests, or you build a small app, don't hesitate to send me notes, and remarks, or publish tuto's, or just return of experience. And if you have some nice screenshots, you may also send it to me.

from vkvg.

Rubo3 avatar Rubo3 commented on May 24, 2024

Oh, sure! Actually, I'd like to replace cairo with vkvg in weston-editor https://gitlab.freedesktop.org/wayland/weston/-/blob/main/clients/editor.c (that's why I opened #58 haha), but first I have to familiarise with your library, so I rewrote cairo's "Hello, world!" example with your functions, which brought me to this issue. Now that it is resolved, I have to find a way to make Wayland speak Vulkan (or it's vice versa). At this point I can set up a repository somewhere, maybe tomorrow I'll do it.

from vkvg.

Rubo3 avatar Rubo3 commented on May 24, 2024

The last validation error is the problem, that's the final blit to dest image.

And what about the first one? Is it still my driver's fault?

from vkvg.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.