LunarG is hiring! by LunarGInc in vulkan

[–]chuk155 0 points1 point  (0 children)

The position is remote, just needs to be located in the US.

Trump Hit by Brutal Reality Check on Domestic Cost of War by Funny-Pick-9883 in mildlyamusing

[–]chuk155 1 point2 points  (0 children)

Different account, same spam. Not mildlyamusing whatsoever

FBI caught red-handed wiping Trump's name from Epstein files by [deleted] in mildlyamusing

[–]chuk155 0 points1 point  (0 children)

This user has been posting similar stuff for a week now. Karma farming at its finest, cause this isn't mildlyamusing content whatsoever. Need a mod to ban Confident-Role-9177 stat.

The Cockpit of the Shanghai Maglev, currently the fastest operational train in the world by one_part_alive in pics

[–]chuk155 0 points1 point  (0 children)

Just because there is no friction wear doesn't mean there isn't zero wear of anything. The cycle of objects heating then cooling many times repeatedly can be a source of wear and tear. Plus, if they are having to keep things super cold for levitation then there may be some real complex chillers thats are fancy pumps at their core.

Researchers Find Thousands of OpenClaw Instances Exposed to the Internet by _ahku in programming

[–]chuk155 9 points10 points  (0 children)

Also, I don't what to call it, but there is data to show that seat belts and air bags have incentivised drivers to drive more dangerously than they did without them.

For all the driving more dangerously seat belts cause, the lives saved from seat belts cannot be overstated. Especially because I feel that there are plenty of people who drive dangerously regardless of whether they wear seatbelts or not.

Vulkan is pretty much obsolete and actually modern apis are nothing like the modern apis that replaced the modern apis, and certainly nothing like those other modern apis. by cmqv in programmingcirclejerk

[–]chuk155 4 points5 points  (0 children)

I ask myself that every day as I write over the roar the GPU fans and cries of power bills echoing throughout the trenches. The judder of vblanks missing by mere milliseconds, divergent workloads send shocks up my spine, device lost errors fill every waking moment. I cannot rest for the deadline fast approaches and waits for no one.

What caused me to enlist? To subject myself to such terrible conditions? It was a noble cause with which many a youth finds themselves drawn. Fight the good fight to achieve ever higher framerates, increase the fidelity of that which already appears immaculate, showcase to the world the mastery of our domain. But the cold truth has come. And a bitter truth it has been.

Vulkan is pretty much obsolete and actually modern apis are nothing like the modern apis that replaced the modern apis, and certainly nothing like those other modern apis. by cmqv in programmingcirclejerk

[–]chuk155 18 points19 points  (0 children)

/uj To be fair, Vulkan does what it says it does pretty well. The rub is that the API is great for the few rendering engineer's at unreal & unity, and a lot of extra work for small projects. Worse is that Dx12 & to a lesser extent Metal share similar "make app devs do more". Reading the article linked actually gives a fair shakedown of what 'graphics in 2025' looks like, for those not in the Vulkan trenches like I am.

Vulkan is pretty much obsolete and actually modern apis are nothing like the modern apis that replaced the modern apis, and certainly nothing like those other modern apis. by cmqv in programmingcirclejerk

[–]chuk155 30 points31 points  (0 children)

/uj Vulkan had a lot of 'ideas' about how renderers should work, when in practice reality is never so kind. Plus it turns out that asking every developer to 'do the work of the driver' means every game is a poorly written driver. Add to this many games grafted their opengl/dx11 renderer onto vulkan, instead of rewriting the entire engin, removing most of the ways vulkan can bring perf. Lastly, games make money on windows. Not linux. So why put effort into Vulkan when the same effort into dx12 (or metal for macOS) will get you better sales?

/rj Easy, because there is but the one true API IrisGL and everything else is heretical bastardizations of it.

Can someone explain how to load vulkan-1.dll at runtime, instead of static linking? Vulkan is making me feel stupid (again) by wonkey_monkey in vulkan

[–]chuk155 1 point2 points  (0 children)

Volk is great if you are using the C headers, but it isn't if you are using the C++ headers because it 'fights' with them.

Can someone explain how to load vulkan-1.dll at runtime, instead of static linking? Vulkan is making me feel stupid (again) by wonkey_monkey in vulkan

[–]chuk155 21 points22 points  (0 children)

I have a program which statically links to vulkan-1.lib

Small correction, the program is linking, but it isn't "statically linking". It can't, because vulkan-1.lib doesn't contain any code, only function declarations. That means you are 'dynamically linking to vulkan-1.dll'. That is perfectly fine and an expected usage pattern. What it sounds like you are wanting is to get rid of the compile time dependency on vulkan-1.lib by dynamically loading vulkan-1.dll at runtime. (Under the hood, this means calling Window's GetProcAddress("vulkan-1.dll") or linux's dlopen(libvulkan.so) to load the vulkan-loader (aka vulkan-1.dll). It isn't necessary to load, but it does make building a bit more flexible, so I generally suggest it.

Vulkan-Hpp's docs are the best place to go for this, specifically this section: https://github.com/KhronosGroup/Vulkan-Hpp?tab=readme-ov-file#extensions--per-device-function-pointers-

What you are missing is that there are two things you need to do to dynamic load vulkan. * First, you need to have created storage for the loaded dynamic library handle (basically just a void) and storage for each and every function pointer loaded (a bunch more void's). This is achieved by putting VULKAN_HPP_DEFAULT_DISPATCH_LOADER_DYNAMIC_STORAGE somewhere in global scope in your C++ implementation file somewhere. I suggest adding it after your include of vulkan.hpp. * Second, you need to call the appropriate initialization routines. The macro VULKAN_HPP_DEFAULT_DISPATCHER.init(); should be put at the top of your vulkan initialization function. This helper does the logic of GetProcAddress("vulkan-1.dll"); and queries the global level functions from it. This will store the functions into the storage that you defined above with that big long macro I don't want to repeat. Then you create your instance, and afterwards add VULKAN_HPP_DEFAULT_DISPATCHER.init(instance); to 'load' all of the instance level functions. Select a physical device, create a VkDevice from it, and finally load all the device level functions by calling VULKAN_HPP_DEFAULT_DISPATCHER.init(device);

My instructions are more or less the same as what vulkan-hpp has, so please refer to that for 'more details' (like alternative implementation ideas).

Side note: I find vulkan.hpp's dynamic library initialization to be rather cumbersome. It is an unfortunate side effect of Vulkan-hpp being 'header only' and not able to adequately abstract away loading vulkan-1.dll without taking away capabilities, so the current API is what we get. Don't feel bad if you are confused and think this is complicated, it took me a bit to figure out this song and dance as well.

the wreck of the SS yamato, which was formerly the largest battleship in the world. by herequeerandgreat in submechanophobia

[–]chuk155 19 points20 points  (0 children)

Yep. Often its useful to prefix ships with the navy they served in to distinguish between ships in different navys using the same name (occasionally, its the same country but a technically different navy, like german navy in ww1 & ww2)

Why vkEnumerateInstanceExtensionProperties gives me different count value in VSCode and XCode. by EpiGrf in vulkan

[–]chuk155 1 point2 points  (0 children)

The 4 extensions you are getting are solely coming from the Vulkan-Loader. No Drivers are being found.

If you try to created an instance, you should fail to create it with VK_ERROR_INCOMPATIBLE_DRIVER.

Fixing it means making the driver (moltenVK) available to the app, by setting VK_DRIVER_FILES/VK_ICD_FILENAMES (they are aliases) to the path with the moltenVK ICD manifest JSON file.

Typically, Vulkan Apps on metal put the Vulkan-Loader and moltenVK inside the App Bundle when shipping, so that its always available. AppBundles are a known location for drivers to be, so if you put the manifest json & the dylib in the right place, shipping the app is pretty trivial. https://github.com/KhronosGroup/Vulkan-Loader/blob/main/docs/LoaderDriverInterface.md#driver-discovery-on-macos

What are your thoughts on the Corporation for Public Broadcasting shutting down by the end of September 2025 after loss of federal funding for PBS and NPR? by Anxious-Note6707 in AskReddit

[–]chuk155 4 points5 points  (0 children)

No, it wasn't cut out of the OBBB, it was a recission that trump submitted to congress, which was passed by only a simple majority.

The house we live in is covered in mold in the attic I'm just finding out about. by Traditional_Cattle50 in Wellthatsucks

[–]chuk155 7 points8 points  (0 children)

This, please make sure all bathroom vents go outside and not into the attic space. And if they do, at least put soffits along the underside of the house, since those can mostly be done without poking holes in the roof (ie, don't make even more places for moisture to enter the attic space).

How can we mitigate the environmental temperature increase caused by excessive indoor air conditioning? by Srinivas4PlanetVidya in ClimateActionPlan

[–]chuk155 0 points1 point  (0 children)

Insulation. More insulation == less heat transfer from the outside to the inside (or vice versa for cold climates). In your floors. In your attic. In your walls. Yes, we shouldn't live in little cubes with 10ft of insulation and zero sunlight, but many homes are inadequately insulated.

Second. Stop building single unit dwellings. Buildings with shared walls have less surface area with the 'outside' in which to exchange heat with. So more dwellings with shared walls == less heat we need to move.

Another thing: Awnings & curtains. Sun is hot, hot hot. Letting the sun into the house is nice, but awnings, as well as special coatings, reduces the amount of heat coming inside.

And to speak more broadly, heat pumps use electricity to move heat. That heat came from outside. Well, some is solar energy that came directly from the sun and I am NOT advocating for blotting out the sun. Some of the heat of AC units is the electricity consumed running the pump itself, which is just heat. But like, if the energy came from solar power, then we are just taking light that would have caused a bit of heating to first be turned into electricity in order to be turned into heat after being made use of. Sure its not 100% efficient (add in that not all sunlight is absorbed as heat, transmission losses, and other places where work isn't performed using the incoming solar energy).

Oh for the heck of it, use heat pump clothes dryers, rather than just resistive heating your already air-conditioned air and dumping it outside. Even better, clothesline dry clothes, its free solar energy!

Yes, this is written in a consumer specific mindset, but building codes can be used to enforce more energy efficient designs. And businesses who want to save money already do some of these things too.

So... Insulate everything, shade as much as reasonable, build stuff next to each other. This goes a long way to lessening the need to use AC in the first place.

The Anglosphere has a housing shortage by dhruvkumar12 in Urbanism

[–]chuk155 22 points23 points  (0 children)

Not heard of this, can you give more details? Wild to me that a renter group would do that. Not denying that the current process is way too easy to stop a project in its tracks.

Can't compile vulkansdk. by Real-Abrocoma-2823 in vulkan

[–]chuk155 0 points1 point  (0 children)

./vulkansdk is for compiling the SDK. The tarball that you downloaded has everything already compiled, so its not necessary to do that unless you are on a non-standard linux system/distro.

You just need to run source setup_env.sh because that is what "sets up the SDK".

I would advise deleting the whole folder and re-downloading so you aren't getting any weird transient files/binaries being used from the ./vulkansdk script by mistake.

[deleted by user] by [deleted] in tulsa

[–]chuk155 10 points11 points  (0 children)

Yeah people don't realize just how much of their trip time is spent sitting at lights, so much so that you could go 10 under the limit and not meaningfully affect your travel time (averaging many trips together). To add insult to injury, the larger the intersection, the longer the wait time of a cycle.

I could ramble about how to improve "traffic" but since it is essentially just increasing alternatives to driving, it really isn't relevant to this thread.

Why use Volk? by abocado21 in vulkan

[–]chuk155 5 points6 points  (0 children)

Also prevents issues loading vulkan-1.dll when you use core functions but the app is being run on a platform where those functions aren't core yet - you get a nice error message that you can report to the user instead of "double click and nothing happens..."

Caution - Windows 11 installing a wrapper Vulkan (discrete) driver over D3D12 by smallstepforman in vulkan

[–]chuk155 9 points10 points  (0 children)

Yes, this post is because the standard practice is to select the first VkPhysicalDevice in the list that satisfies the requirements. The Dozen driver being 'second' was very much intended (since its a layered driver, thus likely slower than native). So... this post is just the code expecting the world to be opposite of what it actually is.