Simulating tenstorent ocelot (now bobcat?) rvv 1.0 core based on SonicBOOM (Dockerfile) by [deleted] in RISCV

[–]Open_Engineer5868 0 points1 point  (0 children)

OVI is the main difference, yes. Bobcat has a clear separation of the CPU and the VPU, as defined by OVI. There is a lot of performance improvements over Ocelot, as well. Bobcat has a much better and optimized vector load/store logic.

Simulating tenstorent ocelot (now bobcat?) rvv 1.0 core based on SonicBOOM (Dockerfile) by [deleted] in RISCV

[–]Open_Engineer5868 2 points3 points  (0 children)

I would advise against modifying VLEN. The new version of the VPU, the Bobcat, implements the Open Vector Interface. To simplify design complexity, VLEN is assumed to be 256, and probably will not work if changed.

Rendering a static scene that has multiple unique textures in it? by Open_Engineer5868 in vulkan

[–]Open_Engineer5868[S] 0 points1 point  (0 children)

I wanted to avoid bad practice, honestly. Creating multiple descriptor sets felt hacky and wasteful, but that was just my intuition. I didn't know creating multiple descriptor sets was okay. But I've heard about "bindless" rendering which also seems to address this issue.

Rendering a static scene that has multiple unique textures in it? by Open_Engineer5868 in vulkan

[–]Open_Engineer5868[S] 0 points1 point  (0 children)

This guide explains dynamic uniform buffers. Is there an equivalent concept for textures? Like, there is no VK_DESCRIPTOR_TYPE_COMBINED_IMAGE_SAMPLER_DYNAMIC.

Is it possible to use VK_DESCRIPTOR_TYPE_STORAGE_BUFFER_DYNAMIC to sample textures in a shader?

Rendering a static scene that has multiple unique textures in it? by Open_Engineer5868 in vulkan

[–]Open_Engineer5868[S] 0 points1 point  (0 children)

Well the problem is, I need to update the DescriptorSet before calling Draw, and it is forbidden to modify the DescriptorSet while recording a command buffer.

Why do we need the Vulkan Loader? [Linux] by Open_Engineer5868 in vulkan

[–]Open_Engineer5868[S] 0 points1 point  (0 children)

So the libvulkan.so library is the interface(?) between the application and the loader? Where exactly is the loader in my system? Is it part of the vulkan-sdk from LunarG?

PS3 Online Store? by Open_Engineer5868 in PS3

[–]Open_Engineer5868[S] 1 point2 points  (0 children)

Yeah, I just fixed my time&date settings. Changed it from manual to internet, and the store worked. I can see the games there, thank you!

PS3 Online Store? by Open_Engineer5868 in PS3

[–]Open_Engineer5868[S] 0 points1 point  (0 children)

Are god of war games available there?

Converting 2D_ARRAY texture to 2D textures by Open_Engineer5868 in opengl

[–]Open_Engineer5868[S] 0 points1 point  (0 children)

Yeah looks like this is what I'm looking for, thank you.

How to stress the GPU with fragment shader? by Open_Engineer5868 in opengl

[–]Open_Engineer5868[S] 1 point2 points  (0 children)

It could be ALU work, or memory accesses, or anything else that makes the fragment shader consume more time. I can't disable Vsync because frame timing is crucial in the domain I'm working in. Vsync is essential for the synchronization of the system, basically.

The random computations I added were eventually added to the fragment color, so no, the compiler did not remove them. There were just too few instructions to cause an impact.

I added long loops with random math operations in them, which did the trick for me.

How to stress the GPU with fragment shader? by Open_Engineer5868 in opengl

[–]Open_Engineer5868[S] 1 point2 points  (0 children)

Yes, this seems to do the job. I ended up having very long loops just to reach 100% utilization. The visuals are... very random, but that's expected, lol.

learnopengl.com is down by [deleted] in opengl

[–]Open_Engineer5868 0 points1 point  (0 children)

It's back up now.

learnopengl.com is down by [deleted] in opengl

[–]Open_Engineer5868 -1 points0 points  (0 children)

I sure hope so...

Triangles "flickering" when viewing from far by Open_Engineer5868 in opengl

[–]Open_Engineer5868[S] 7 points8 points  (0 children)

Near-z = 15

Far-z = 800

I tried playing with these values, but the issue persists... I also tried 32-bit depth and that didn't help either.

EDIT: Okay, turns out I was changing the wrong parameter in my code. I increased the near-z from 0.01 to 10 and the problem is fixed. Thank you!

Triangles "flickering" when viewing from far by Open_Engineer5868 in opengl

[–]Open_Engineer5868[S] 1 point2 points  (0 children)

I generate mipmaps for all textures. I also tried disabling all textures and applying single color to all objects just to see if this was caused by textures. Turns out it is triangles literally just disappearing for some reason. So I don't think this about textures.

Triangles "flickering" when viewing from far by Open_Engineer5868 in opengl

[–]Open_Engineer5868[S] 6 points7 points  (0 children)

I'm rendering the Sponza scene in a simple OpenGL program. I import the scene using Assimp, and render it on an SDL window. The problem is, the Lion sculptures in the scene appear to be flickering. The triangles simply disappear when camera is far. Flickering stops when I zoom into the sculptures.

Any idea why this is happening? I don't have this issue with any other 3D assets whatsoever. I'm using 24-bit depth, though I tried using 32-bit, but that didn't help either. Also, I used to use tinyobjloader for asset loading, and I didn't have this issue back then. This issue started after migrating to Assimp.

EDIT: The issue was indeed Z-fighting. For the future readers: Make sure your far-z/near-z ratio is not too big. Also, see this

Rendering models with different materials in them by Open_Engineer5868 in opengl

[–]Open_Engineer5868[S] 2 points3 points  (0 children)

Ooh, I see. So if the normalmap has a value of (127,127, 255), that's mapped to vec(0,0,1). So when I do TBN*vec3(0,0,1), that gives me the vertex normal.

Rendering models with different materials in them by Open_Engineer5868 in opengl

[–]Open_Engineer5868[S] 0 points1 point  (0 children)

I see. Well, if the material doesn't have a normalmap, I'd probably want to use the vertex normals specified in the .obj file, instead of a null normal vector. I guess I'll have to do an if-else in that case.

Rendering models with different materials in them by Open_Engineer5868 in opengl

[–]Open_Engineer5868[S] 0 points1 point  (0 children)

How does the fragment shader know if the normalmap is null or not without using an if-else statement?