Seeking clever folk to weigh in regarding the logic required to produce a fairly unique kind of environment...
I'm tentatively making notes on how I might go about creating a 3d game with a fairly standard environment, grass, hills, trees, water etc... but I want the environment to wrap around so it never ends.
So the left edge of the map will match up in terms of landscape to the right edge. The bottom edge will match up to the top. The player character, in this case a flying vehicle, will never actually move but as it 'flies' around the world, what will actually be happening is that the landscape will be moving, creating the illusion of flying about the place.
As tiles of landscape fall beyond the view of the camera, they will be destroyed and as the vehicle flies in a particular direction, new tiles will be created (i.e. emitted) shortly before they enter the view of the camera.
Therefore, the environment will never run out of space because the player never actually goes anywhere and hopefully, the tiles that are visible at any one time will be manageable enough to be reasonable on the thermo.
It's basically jazzed up Defender. Like Virus and Zeewolf from back in the 90s if anyone else is old enough to remember those. Those games all had wrap-around maps.
I'm very interested in general ideas of how you might approach creating this in Dreams. I've got my own ideas but I've a feeling I haven't hit on the right way yet. So if you have any thoughts about what direction I should be taking in my thinking, I'd be very appreciative.
The one thing to bear in mind perhaps is that the map tiles themselves will be quite large. Like maybe 50-100 metres square each. So I think basing it around the idea of precisely placing things at exact, set distances is probably not very practical, although in many grid based games that's a good way to do it when on a smaller scale. To be honest I found it a real pain to create a single tile that was exactly 50 metres square, it took a long time and numerous attempts, although it was my first try.
-
Someone made a spherical world with a follower in the middle to act like gravity. Theirs was smaller, but maybe if it was big enough it would suit your needs?
Andy -
This is potentially a really difficult and complex logic problem. To begin with, I'd just get the basic spawning for the map to work, with just 1 map tile repeated. I think the best way to do it is if the map moves and the player rotates. Just start on the X and Z axis before adding any Y axis (vertical) movement. You're almost certainly going to need to implement vector logic to get the map to move correctly, based on the player's rotation. Don't add any extra gameplay features or enemies until you get a basic working map, at minimum.
I'm sorry I can't go into more detail. I haven't personally tackled anything this big or difficult yet, so I'm just outlining my thought process to get started. -
Yeah, good advice thanks. That's basically the exact approach I'm using at the moment. The movement stuff seems ok and I'm just about familiar enough with basic vector calculations to get through that bit.
The part I'm struggling with is how to allocate and organise the map tile logic once I do have more than one tile on the map. I mean, if for example the map was going to be 10 x 10 tiles in size, with software that would be easy to handle with an array but I'm not sure how to translate that idea to Dreams. -
2 selectors could work for selection (think of it like a chess board). The active 2 outputs, plus an AND gate could point to the most central tile, with the relevant adjacent tiles also being active.
-
Have a look at this youtube tutorial - it does it in a linear way. May inspire you :-)
https://m.youtube.com/watch?v=hFU9Uz1EAkc
댓글을 남기려면 로그인하세요.