8 ms·
Wow, I was high sceptical that you would be able to scale this up past the short view distance. But not only have you managed to get a good view distance, but y
by BatFastard 11y ago
Wow, I was high sceptical that you would be able to scale this up past the short view distance.
But not only have you managed to get a good view distance, but you also added in a nice animation system.
Congrats to you! This is coming from someone who has spent years designing their own voxel platform.
Please get this out to users to let them start building things, you will be amazed at what they can create.
- gavanwoolery 11y agoThanks! Don't tell anyone, but I was legitimately skeptical too. :)
- munificent 11y agoMany many many game developers get sucked into the infinite vortex of trying to "find the fun". A computer is a very large blank canvas and the set of all possible games is infinite. It can be overwhelming trying to decide what game to make. Often, developers wander off to "make an engine" partially as an excuse to put off making those scary decisions. But an engine isn't a game and if you want to ship something people can play (and not just make games themselves with) you do have to make that choice. You've made an insane amount of progress, but I wonder if you're struggling with this too. If I can make two suggestions that might help: 1. Realize a negative choice has positive value. Every idea or feature sounds cool, so the default answer to "Should I add ___?" or "Can the player do ___?" or "Can the engine support ___?" is going to be "yes" because it all sounds fun. But the end result is something that takes infinite time to produce. Your time is finite. It takes courage, but I find I make better progress when I deliberately allow myself to choose not to do something. Remember, any feature you omit pays you back in the most important currency: time. By saying, for example, "No multiplayer", you're saying "Yes" to a lot of other features you will now have time to implement. 2. Make the game that only your engine can do. You're in an unusual position in that you already have a very interesting, unique engine. Most developers out there just have half-baked clones of existing engines. When you're trying to figure out what kind of game to build on top of that engine, focus relentlessly on the kind of gameplay your engine, and only your engine can support. For me, that's rich, detailed, destructible terrain. If it doesn't take advantage of voxels, cut it. Looking at the videos over the past year, I see lots and lots of basic character animation. Every game engine can do that. It's not interesting to see yours can too, and it takes (took) a ton of your time to do it. Don't spend time catching up to other engines. Spend time building on top of what you already have. I don't care if a character in the game is a simple billboard—I actually think billboard characters would look nice with the pixely voxel style—I'm coming to your engine for the terrain. Everything else is secondary. Good luck! It's been inspiring watching you make progress on this.
- gavanwoolery 11y agoThanks Bob! Totally agree with you - it really is a battle of fighting against my "engineering instinct" which just wants to build stuff all day, no matter how useless it is. I have deliberated over this internally with myself and others for a long time. In fact, half way into the character animation I was kicking myself for even beginning working on it. I tend to justify things (whether rational or not) as a content problem ("Oh I can just build this system and it will make making this type of content so much easier!"). I now really need to hone down on gameplay (and stop just telling myself to do so). :)
- munificent 11y ago> I tend to justify things (whether rational or not) as a content problem ("Oh I can just build this system and it will make making this type of content so much easier!"). That can also be a trap (one that I myself am particularly prone to given how much I love roguelikes and tool-building). When it comes to games, I'm just not wired right to enjoy hand-authoring content. So when I do game-like stuff, I tend to lean towards procedural generation because it lets me avoid that unpleasant task. But, I've learned, painfully, time and time again, that that tends to be way harder than hand-authoring. It kind of makes sense. If hand-drawing a fun level is difficult for me to do, why should it be easier for me to write a program than can author a million of them? In some sense, the latter must be strictly harder since it is a superset of hand-authoring a few one-off things. Tool-building does matter, of course. But sometimes you just gotta make some stuff. Another option is to push it onto the player: make the gameplay itself creative. That can work (SimCity), but it can also fizzle out (Spore). The problem there is similar, I think. With hand-authored content, you have to come up with a narrative path or maybe a tree through the possible game space that's fun to play. With player-authored content, the entire play space has to be fun. Otherwise they'll be able to make anything, but most of the stuff they make won't be fun to make.
- BatFastard 11y ago"One more system will solve my problem" is the siren's lure isn't it. But I have learned "It's turtles all the way down". Each problem solved reveals more opportunities. So I just try to enjoy the process of learning, if I am lucky it will end up being fun too. If not I enjoyed the journey.
- anonova 11y agoNovaLogic's Delta Force (1998) and Delta Force 2 (1999) had a "voxel game engine [that allowed for a] nearly unlimited draw distance" [1]. Though the other objects in the game were rendered with polygons, has a far view distance been difficult with modern voxel engines? [1]: https://en.wikipedia.org/wiki/Delta_Force_2#Game_engine https://en.wikipedia.org/wiki/Delta_Force_2#Game_engine
- kevin_thibedeau 11y agoIt's not a true voxel engine, just a 2D heightfield renderer. Note the lack of holes or undercut walls.
- gavanwoolery 11y agoDelta Force and Commanche were among games that drew me to alternative engines. Doing a CPU-based renderer gives you lots of new tricks and abilities, things you can't do with simplified massively parallel architecture like GPUs. Many games have a far view distance now (see Uncharted or Just Cause) - but doing it in a dynamic world that is procedurally generated in realtime with solid geometry is a whole other bag of cats. :)
- kazinator 11y agoHear ye! I lost interest in games right around time time 3D graphics cards started coming out. I figured, that scene is pats its prime now; it's going to just be generations of the same thing over again, but rendered slightly better. Programmers no longer in control over the details, just pushing some triangle meshes into some hardware blackbox. All software Doom, Quake, Wolf 3D, Rise of The Triad and such: that was still cool stuff. The game programmer should control every pixel going into the frame buffer.
- drojf 11y agowell you COULD use OpenCL to "control every pixel". Here's an example of path tracing in "realtime" (ok, it's not quite there yet) on the GPU. https://www.youtube.com/watch?v=BpT6MkCeP7Y https://www.youtube.com/watch?v=BpT6MkCeP7Y check out this blog too: http://raytracey.blogspot.com.au/ http://raytracey.blogspot.com.au/