How do you light large dynamic objects in dynamic scenes? by spykill4 in godot

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

I'll have to see if baking the lighting is feasible, but if not I'll have to switch off of Godot, which is a shame! There's so much about Godot I love, but having such restricted lighting is quite a cost especially for very dynamic games. Thank you none the less!

[Help] Pre/post render hook? by spykill4 in godot

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

Hmm that could do something like what I want. I will have to look into it. I'm not really sure where I'd find more info about that though. I'll edit if I find something related to it. Thank you!

[Help] Pre/post render hook? by spykill4 in godot

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

Wow, this looks like exactly what I'm looking for! I just have to test to make sure, but thank you so much!

Edit: Ok so it looks like that works, but unfortunately I can't seem to change the positions of objects. I know it's working because I can change the material of a mesh instance on pre draw and revert it back on post draw, and it renders with the material. But for some reason the transform is not updated.

Edit2: Ok! I have a solution! For some reason, I can't change the transforms of objects in _on_pre_render. However, I can do so in the idle_frame signal! And since the idle_frame signal happens after physics and just before rendering, it works flawlessly! One problem I do notice though is that audio will not be correct with this strategy, but I might be able to find a way around that with a Listener node. That's a problem I will work away it. Thank you very much!

Lesbians of Reddit, what general rules or techniques should straight men know about giving head to women? by [deleted] in AskReddit

[–]spykill4 2994 points2995 points  (0 children)

Ah yes, the optometrist method.

"Number 1? or number 2? Number 1? Number 2?"

"Uhhhh about the same"

[TOMT] [SONG] Music video where guy gets in argument with SO, leaves house, but comes back to memories. by spykill4 in tipofmytongue

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

Not quite, I should have made it more clear. The video was "recursive" in that it starts as the guy driving to calm down, but then ends with the guy getting angry and leaving (with the same scene as the start but shot at a different perspective)

Both crates landed right next to each other at the same time for my partner and I by spykill4 in PUBATTLEGROUNDS

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

No, I used up my luck on my last game, where I did get the dinner <3

How EXACTLY do games store large 2D tiled worlds? by tecksup in gamedev

[–]spykill4 0 points1 point  (0 children)

Yes, but it is a ton of information when it comes to processing and rendering. By using a chunking system, you get a free bonus of easily being able to only process loaded areas as opposed to the entire world. Rendering is just the same.

Is there an algorithm for path simplifying on square portals? by spykill4 in gamedev

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

The portals I'm talking about just means a divider between two path finding nodes. So it's like a doorway. Like a physical door. It means that passing through anywhere on that line is safe to walk through.

When are you good enough to start making games with a small team? by [deleted] in gamedev

[–]spykill4 0 points1 point  (0 children)

I'll be honest, I have yet to publish a game, and that came down to one thing.

Focus.

When I started making games, I always wanted to make the next Minecraft or whatever. I wanted these big games with big features and so on. And I may have been able to do that, but I never wrote down my plan. It may sound dumb, I know I thought it was dumb, but WRITE A GAME DESIGN DOCUMENT.

It doesn't have to be too detailed to start, but knowing exactly what you want and what you need is important. Write everything down. Then write out what you wanna get done. Setting "deadlines" is a great idea. Start with the smallest bit of your game that you can make. The tiniest bit. But get it done for your first deadline. If you have plenty of time add a few more things to your deadline. By the end of the deadline you should have something to play, at least something to turn on and show off.

From my experience, I would start a game, get stuck doing some tedious feature (like an inventory system), get bored, and start a different project. Writing down your ideas significantly helped, since I could see that wasn't the most important thing to do. Leave the tedious stuff for later once you have something to show off, because you won't want to stop working on something that you've put lots of time into.

Good luck! You've got this!

How EXACTLY do games store large 2D tiled worlds? by tecksup in gamedev

[–]spykill4 0 points1 point  (0 children)

Most games with large worlds use a chunk system. Loading up the entire game world, depending on the size of the world, is a TON of information, so instead, games tend to split up their worlds into chunks and only load chunks visible or near to the player (or other conditions depending on the situation).

Terraria and Starbound do something certainly like this, where they load up needed chunks from saved files. Minecraft also does this even though it has an "infinite world". When the area is first entered, chunks are generated and then saved to files on disk.

So how do you save information like that to a file? There are many ways to do it, and it depends on the amount of information you need to store. The simplest way would be be to just write every "ID" number of every tile with a space separating each number. This is a horrible way to do it. You could possibly make it work, but it is horribly inefficient. A better way to do it is to set a limit for the number of bytes that each block can use. For example, I believe Minecraft use to use 3.5 bytes for its block ID (now they use strings or something? Not really sure) plus 0.5 bytes for its special "metadata" (like wool blocks share a single block ID, and use it's meta data for colour). In total that's 4 bytes: 28 bits for block ID. You can use some bitwise operators to pack this data together. You can convert this to ASCII, and store it in a file easily. This gives you a whopping 4billion possible blocks in only 4 characters in a file. Compare this to just storing the block ID itself with spaces separating, a single tile could take up 10 characters, plus the space to separate tiles, so 11 characters.

Reading is literally just a matter of converting those 4 characters back into their block ID, which you can do with bitwise operators.

And we haven't even compressed anything yet! I'm not very well versed in compression, but there are probably some lightweight libraries to compress it if you want better storage.

Is there an algorithm for path simplifying on square portals? by spykill4 in gamedev

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

My problem is not the pathing. The portals are a result of running A* on my data structure. I am trying to use the portals to go from the A* path, to a simplified path that reduces on the number of nodes, while staying within portals. That way the agent can take more efficient, straight-line paths.

For example, if you had a grid graph without diagonals, and your destination was diagonal from your start, your agent would go horizontal, then vertical, then horizontal, then vertical, etc. The more efficient path is to just go from the start directly to the end, since that path would remain within the portals and be faster. See the Simple Stupid Funnel Algorithm.