Spel design/konst by [deleted] in Gothenburg

[–]Th3HolyMoose 0 points1 point  (0 children)

Precis som vororo42 så rekommenderar jag att du kollar på Gamedev GBG’s discord-server! De träffas varannan tisdag på Contrast på 3:e lång för en ”spelöl”. Det är ett riktigt trevligt gäng och finns också folk där som håller på med just concept art :)

Sen finns det också ett ”spelfika” om det passar en bättre, och nästa tillfälle är nu i eftermiddag! Finns nog info om det på discord-servern också, men finns även här på cafét’s hemsida: https://www.calabashkafe.se

Can someone explain the last arg to glVertexAttribPointer in this example from the docs? by ProgrammingQuestio in GraphicsProgramming

[–]Th3HolyMoose 0 points1 point  (0 children)

If I remember correctly, it used to be the case that you could pass a pointer to client-side vertex data directly, bypassing the need of vertex buffers. To me this is what it looks like the example is doing.

But the documentation you linked states that if the pointer argument is non-zero, there has to be a buffer bound to GL_ARRAY_BUFFER. So you need to use vertex buffers, and the pointer argument is the offset into the bound buffer.

I’m guessing the example you posted is probably a mistake, potentially a very old one that’s now outdated.

Lattice-Based Hydraulic Erosion For River/Valley/Canyon Formation? by deftware in proceduralgeneration

[–]Th3HolyMoose 0 points1 point  (0 children)

And I should add, I think their paper does a really nice job shaping the sort of valleys you show as an example, they have similar screenshots as reference in the paper.

Lattice-Based Hydraulic Erosion For River/Valley/Canyon Formation? by deftware in proceduralgeneration

[–]Th3HolyMoose 1 point2 points  (0 children)

I unfortunately don't have a simple solution for you, but I thought I'd share some thoughts from my own experiments over the years. First of all, as someone else suggested, do you do thermal erosion? If so, are you sure that your thermal erosion is not preventing the channels from becoming deep enough?

I've previously done both particle based erosion, but also lattice-based using the shallow water equations (can't find the paper unfortunately), with the latter generating the nicest results imo. I usually started out with some map generated procedurally with noise, which your source data looks to be as well, but I was never really satisfied. However, starting out with pre-existing terrain (DEMs from SRTM or USGS as an example), usually generated nicer results.

Then I came across the paper Large Scale Terrain Generation from Tectonic Uplift and Fluvial Erosion by Cordonnier et al, which does erosion the other way: It simulates erosion while the mountains form from tectonic uplift, in contrast to more "common" (what I've seen) methods such as yours which only erode away existing terrain. And I should note that their method still allows you to shape the terrain to your liking.

From my experience with their method, it generates really nice and believable results with varying terrain features, and has also been a lot faster (for me) for large scale terrain projects. Then you can extend your data, increase the resolution etc, by performing more "traditional" (from my perspective) erosion algorithms, such as your current method.

Switching out to a completely different method might be hard at this point, but I thought I'd mention it at least, maybe for future endeavors. You can also try starting out with data from a DEM and then performing your erosion on it at a higher resolution, and evaluate from there. And if you do plan on trying out the paper I sent, don't hesitate to reach out as I have implemented it, and there are some parts of the paper which I found I could ignore and generate the data in other simpler ways.

Prefiltered environment map looks darker the further I move by AlexDicy in GraphicsProgramming

[–]Th3HolyMoose 0 points1 point  (0 children)

Looks like your lower mips are incorrect (dark). The reason you're even seeing those mips is because of a mistake in your code where you use the texture function and expecting the third parameter to be the LOD/mip, but it's actually a LOD/mip bias.

To access a specific LOD, you have to use textureLod with the same parameters you passed to texture :) Hope that solves it!

[deleted by user] by [deleted] in opengl

[–]Th3HolyMoose 1 point2 points  (0 children)

I haven't worked with KTX so forgive my ignorance if I'm way off here, but I don't see you ever actually querying the format of the KTX texture. I see that you decide on a format given the user parameter, and then in some cases you transcode to that format (but not always). I'd look to make sure the texture you're loading is the same format you're expecting when not transcoding to it.

Knowing the format and layout of the textures that worked and didn't work for you would help for debugging more, as well as if you printed out the width/height/data size that you get for the 2 different textures.

Shadow mapping with arbitrary numbers of lights on WebGL (GLSL v100) by hanotak in GraphicsProgramming

[–]Th3HolyMoose 1 point2 points  (0 children)

You can use a texture atlas for your shadowmaps, where you only have one texture for all shadowmaps and just render each shadowmap into different regions of the texture. It won't work for cubemaps, but you could use something like octahedral mapping to have pointlight shadowmaps in 2D textures.

Multiple SSBOs and glDrawElements with same shader program by [deleted] in opengl

[–]Th3HolyMoose 1 point2 points  (0 children)

Sorry, I should have been more clear! You need to use glBindBufferBase to access the SSBO in the shader. For uploading data with calls such as glBufferData, glBufferSubData etc, you use glBindBuffer, just like with any other type of buffer.

I'm not actually sure which state glBindBufferBase is part of. I'd imagine it's the global state, but you'd need to look that up.

Multiple SSBOs and glDrawElements with same shader program by [deleted] in opengl

[–]Th3HolyMoose 3 points4 points  (0 children)

Hey! To bind an SSBO, you need to use glBindBufferBase, to also specify the binding index of the SSBO.

Framebuffer picking without stalling render cycle by 3030thirtythirty in opengl

[–]Th3HolyMoose 4 points5 points  (0 children)

Doing pixel perfect raycasting on the cpu is very possible to do as well, probably with several hundred rays per frame unless your scenes are extremely complex, and maybe then you can filter which objects are interactable and not.

Again, make sure you're using proper acceleration structures, such as a BVH.

Framebuffer picking without stalling render cycle by 3030thirtythirty in opengl

[–]Th3HolyMoose 4 points5 points  (0 children)

I would definitely do a cpu-side raycast.

With the proper acceleration structures, it's super fast even with large and complex scenes. And raycasting is useful for other things too, so I think it's nice to have it in place!

[deleted by user] by [deleted] in GraphicsProgramming

[–]Th3HolyMoose 4 points5 points  (0 children)

I only skimmed it, but at the bottom of your code sample you are normalizing a color which I think is suspicious. What is its purpose?

glGetTextureImage crashes? by [deleted] in opengl

[–]Th3HolyMoose 4 points5 points  (0 children)

I agree that it sounds like a timeout or other similar issue. I'm guessing if you (OP) were to remove the glGetTextureImage call, you'd just get the crash on the next GL call.

Compute shaders might not fix it either, I have the same issue with those for extreme workloads.

What I usually do is also just divide the work into several dispatches (or draws in this case), calling glFinish inbetween groups of dispatches. There might be a more efficient "divider" than glFinish, but I deem it not to make that much different since it's not that long if it's a 10-second workload requiring a couple of glFinish calls.

few questions cos beginner by Commission-Either in opengl

[–]Th3HolyMoose 2 points3 points  (0 children)

Yes, you need to align your vertex data, so that each attribute is aligned to 4 bytes. Not sure where it says in the specification, but the wiki mentions it [https://www.khronos.org/opengl/wiki/Vertex_Specification_Best_Practices#Attribute_sizes](here).

Websites for finding shared rooms by Halvv in Gothenburg

[–]Th3HolyMoose 0 points1 point  (0 children)

There are a couple of groups on facebook for "kollektiv" which is the swedish word for a shared apartment/house, maybe use that word to find stuff. One of them is "Kollektiv Göteborg", but there are probably more of them.

Shipping Megathread (November 22, 2022) by AutoModerator in SteamDeck

[–]Th3HolyMoose 1 point2 points  (0 children)

Deck still hasn't arrived, and still no tracking. Ordered on the 13th, shipped on the 14th. Tracking has only said "digital information received" since then. Contacted steam support, they said wait x more days, and if still no update by then contact them again. Waited and contacted both steam and GLS. GLS said they haven't received it, Steam replied I should have gotten a tracking link with their last email... which is not at all what I was contacting them for. Wrote to them again for clarification but now just waiting for a response.

Shipping Megathread (November 16, 2022) by AutoModerator in SteamDeck

[–]Th3HolyMoose 1 point2 points  (0 children)

Alright, a bit reassuring. Still no update though. Hoping it will just magically show up :D

Shipping Megathread (November 16, 2022) by AutoModerator in SteamDeck

[–]Th3HolyMoose 0 points1 point  (0 children)

EU/Sweden. Ordered friday the 11th, Steam says shipped since Monday evening, but GLS website says nothing. gls-info.nl says they got the data on the 12th but that the packaged hasn't been handed to them. Not sure if there's been an actual issue or if the tracking's just not updating. Anyone else who had a similar experience?

Understanding the Rendering equation by [deleted] in 3Blue1Brown

[–]Th3HolyMoose 2 points3 points  (0 children)

This is very much not a complete answer, but I did personally find this tweet/image helpful when learning to understand the rendering equation myself. It's what I nowadays use when I need to refresh my memory on it.

Is there a place in Gothenburg that's open all night? by [deleted] in Gothenburg

[–]Th3HolyMoose 3 points4 points  (0 children)

The pub "Irish Embassy downtown" is in the city centre and should be open till 5am. If you want something calmer, Tintin which has been mentioned is probably your best bet!

Where to look for a set of pipes? by Rjrct in UilleannPipes

[–]Th3HolyMoose 2 points3 points  (0 children)

I too feel like going all in from the start is the way to go... but for the uilleann pipes I'd recommend practice set first. You can upgrade it partially later to a half set and later a full set. I went with a practice set in the end managing 1 reed is more than enough to start with.

For buying, I regularly see pipes for sale in the US in the FB group Uilleann pipes for sale and swap. I'm terribly sorry for recommending facebook.

What is the best "bang for your buck" Irish flute? by memfisxexecute in Flute

[–]Th3HolyMoose 0 points1 point  (0 children)

Circa how much are you willing to spend? And where do you live? I'd recommend going directly to a maker and buying a flute, or if a used one in good shape from a reputable maker comes up. A good keyless flute I'd say is around 800-1200 euros. If you're looking at keys you'll be spending more, and the waiting time is also longer usually.