July Update: Friendship ended with 2D graphics, now Voxoid is my best friend

What’s up?

When I left you guys last time, we had just procured Voxoid to use for our graphics in Robot Farm. This past month, I’ve been working on a wrapper for it that I can connect to NNGINE and marry the two properly. I’m happy to report that this was a success and I have it working! I’ll be going over the details of this below.

So to start, I had to actually get Voxoid working and see it in action. Voxoid is an API designed to work with MagicaVoxel and load its file formats. So the first thing we did was set up a basic example using PuppyGames own windowing implementation and get something on the screen:

Voxoid First Screenshot.png

Above is one of the default VOX files that come with MagicaVoxel. We were able to get a basic program working that would load and render the above model.

From here, I had the basics of what I needed to start making some cool stuff. The next thing on the list was to add a system where I could load a sprite as a voxel model. After some work, I was able to tweak the program to produce the following:

Voxoid Samuel Test.png

And of course, we need to be able to animate the sprites. So I went further and added support for sprite sheets by cutting up a bytebuffer and loading each frame of the sheet as its own model. It wasn’t much work to add this after the foundations were done:

This technology is impressive and will make up the backbone of our rendering works. The idea is we’ll be able to easily convert all of Robot Farm’s existing resources into 3D, dynamically at runtime. This is going to lead to some very exciting graphics once we get more stuff working.

Anyway, next on the list was getting some basic stuff for the new 3D World Editor (our modding tool) working. If you’ve forgotten, this is what the old World Editor looked like in action. Essentially, we want to give players the power to make their own Robot Farm stories the same way we make ours. So what we’ll be doing is reproducing that functionality, just in 3D now. Here is our initial test of it:

world blocks test.png

So here it is. It doesn’t look like much yet - but this is basically a proof of concept for what will eventually be our new world editor. We have basic raycasting working so you can remove the blocks with the mouse as well. It looks a bit Minecrafty at the moment, but I promise the end result will be much more impressive.

Lastly, once all of this was working, we got all of this working and integrated with NNGINE-L. And that completed our journey of compiling all of the tools I need to begin working on Robot Farm again. I’ve created a new git repository for Robot Farm today in fact, and have begun assembling its foundations and porting over useful code from the old version.

A massive benefit of using an upgraded version of NNGINE is that I’m going to be able to reuse approximately 60-70% of Robot Farm’s existing code in this new rebuild while simultaneously giving it a massive facelift.

So where do we go from here?

Work on Robot Farm itself has finally begun again. The plan is to build up the World Editor and then make a cool Robot Farm tech demo for it that we’ll post on YouTube. I’m hoping to have this working sometime next month if I play my cards right.

And that about does it for this months update! I'm going to try and do these monthly to keep everyone posted. So keep your eyes peeled!

Until next time!

♥ NOKORIWARE

Stay updated!

NOKORIWARE YouTube

Robot Farm Twitter

Check these out too:

PuppyGames Twitter

LWJGL Website

Previous
Previous

August Update: Robot Farm World Editor & Modding

Next
Next

NOKORIWARE is bad at hiatuses | Update on Robot Farm