๐Ÿ‡จ๐Ÿ‡ฆ Kyle Halladay is a user on mastodon.gamedev.place. You can follow them or interact with them if you have an account anywhere in the fediverse. If you don't, you can sign up here.

๐Ÿ‡จ๐Ÿ‡ฆ Kyle Halladay @khalladay@mastodon.gamedev.place

ah chicago. Winter cold finally let up, and we've now moved into thunderstorm season.

Wtf would a "Blockchain based gaming platform" even do?

@banditjoj Don't you mean "boop three snoots and you're oot" ? :D

@nich I had heard mixed things about the book, might have to give the movie a try.

@nich haha is this a ready player one reference? I feel like I'm a bad game developer, haven't read it or seen it (yet?) haha

glad you like the blog posts though :)

Making dds textures via command line utils like it's 2006 โ™ชโ™ซโ™ฌ

@MaDHaTTaH9 Having Unity experience was a big help with getting my first job (smaller studios tend to commonly use Unity). But if you're not looking for smaller studio / mobile, then Unreal might be better because it communicates that you know c++

of course, your own engine is also an option :)

@Gohla Interesting, so this would suggest that instead of using HOST_CACHED | HOST_VISIBLE for the matrix data, the better choice would have been HOST_VISIBLE | DEVICE_LOCAL

@pokepetter @jakob I think they were talking about that at GDC right? that Unity is going to release an incremental compiler that won't make you recompile the whole project for every script change?

@Gohla Or it could also just be another mistake I've made somewhere in the program that's making it look like a perf difference there XD

@Gohla It seems like perhaps that perf difference might be specific to NVidia cards (which have a lot of extra memory types hidden behind the scenes), since I think that according to the spec, the only HOST_CACHED or HOST_COHERENT memory types you can find are also HOST_VISIBLE

(as per: khronos.org/registry/vulkan/sp)

@Gohla I went with HOST_CACHED because then I could update the transform data directly on the mapped pointer, and then flush all the changes at once. I only needed write access to that pointer, so I *think* that HOST_VISIBLE is unnecessary (is that correct? that feels like an unfounded assumption I made)

I actually found that some cases performed better with HOST_VISIBLE | HOST_CACHED, while other cases performed better with HOST_CACHED. I'm not sure of the reasons for that yet.

@Gohla Totally agreed, my vertex buffer handling could be improved. For this test it didn't feel super important, because I wasn't going for raw performance, but rather, trying to see perf differences across different vertex shaders, so as long as the scene stayed constant, I was ok with the reduced performance.

Ideally I'd like to organize my data to avoid as many bind calls as possible.

@_discovery I hadn't seen this before, and I now that I have, think this is exactly how I'm going to go (either this header, or a subsequent one). Thanks for the link!

on the one hand, I don't really want to worry about containers / Win32 threads, all that jazz.

on the other hand... my hobby projects are all namespaced functions and POD structs...even using vector feels odd. not sure I can handle even more cognitive dissonance.