![]() ![]() I have only an academic knowledge of the computational problems involved I trust that the experienced, professional game developers would solve the problem if they could, within the constraints of consumer CPUs, GPUs, and memory.Crops can be harvested by players who previously took it upon themselves to plant seeds and tended to them daily until they've become fully ripe. It's just not easy, which is why games don't go there. Then you have to test for contiguous walls somehow, since it's possible the vectors all impact a block, but those blocks are actually part of independent structures. Then there have to be rules about terrain vs blocks vs trees vs everything else. Like constantly shooting arrows of infinite velocity in every direction and testing what they hit. The only way for the game to determine "inside" in a way that would be reasonable would be (I think) for it to do a bunch of vector tests, constantly. Heck, just stand next to a large pine tree and you're in low-light conditions. A medium-sized ceiling-only canopy would create very dark shadows. It is not difficult to create a low light level without actually creating a structure that would really be considered "enclosed". Right, but the suggestion was to use light level as a proxy for "inside". Then!! you have to periodically repeat that huge pile of calculations so that if a block was removed or added the "inside" and "outside" blocks were appropriately recategorized as needed.Īs I mentioned previously, I think at that point FPS would turn into FPM. Then you'd have to do that for every block in the active chunk to work out which ones were "inside" and which ones were "outside". ![]() But to do what you are asking, you have to path find from that block, every single possible combination of paths and ensure that all of them ended in a solid block. That's a nice, easy calculation to do, likely a raycast up the Y axis and see if it hit anything solid. For light, it's just done by checking above the block for clear access to the sky. How do we calculate if it's "inside" or "outside". Thats what survival is all about.Īnd you cant do much in a very small room anyhow, and need to go outside again.Īs has been noted though, it's a simple matter for a human to work out, what's "inside" and what's "outside", not nearly so easy for a PC to do it in a convincing realistic way. Its not cheating if you spend time to build a structure, that will create an enclosing. If you want to live in relative peace in the snow biome, invest in very warm armor/armor mods. This particular game has a very interesting twist in that heat sources also attract additional death, in the form of Screamers. It's computationally very simple to figure out how close you are to a fire, or how much fur you are wearing. Most games where temperature is a gameplay factor deal with it via clothing and heat-producing objects. Start talking about multi-level bases which might have open rampways and other closed-off areas and it becomes ridiculously expensive to compute just how much wall is enough to count as "inside". But the wind is blowing straight through the parking garage, innit?īut you say, "well there aren't any walls so obviously I'm not inside", and that's the hard part computationally: figuring out if there are any "walls" that enclose your "inside" space. Are you "inside"? You don't have sky access, for sure. You essentially have 100' radius of ceiling over your head and floor under your feet, with pillars at the corners. Imagine you were standing in the center of a middle floor of a multi-level parking garage. Trying to use sky access as a stand-in for defining "inside" vs. If a block has direct and unobstructed upward access to the sky, then that block is "outside", usually for the purpose of plant growth. ![]() Most games use "sky access" as a stand-in for "outside". It's easy for you or I to figure that out in most cases, but it begs the question a bit (in the original sense) because it presupposes a definition for "outside". The easily-understood human concept of "inside" is something like "there is no path to the "outside" that does not go through a solid block (including possibly a door or window)". "outside" is a very non-trivial computation problem. Suddenly it's shaded and.warm? Determining what is "inside" vs. Freezing to death? Build an "umbrella" out of solid blocks. The temperature should mainly represent open spaces in nature. ![]() It could use the same logic as the lightness-level.Īnything darker than the outside light is inside, and could thus also have an inside temperature, with forges and torches increasing it radially. ![]()
0 Comments
Leave a Reply. |
AuthorWrite something about yourself. No need to be fancy, just an overview. ArchivesCategories |