This week’s assets spotlight is a bit of a cheat in a few different ways. First, it’s obviously not done. I like the geometry just fine but I haven’t event started on replacing the color UV pattern Blender generates for you. Second, I actually made this fence for a previous project and have probably even featured it on here before, but I’m using it again because I want Isles of Arden to have all hand-painted textures whereas previously I was just using flat material colors. So it’s semi-new, and semi-complete, but at least it’s something!
This week is also the first time I’m using a screenshot from inside the game itself as the asset spotlight image. You can see the placeholder player character in there for scale reference. This is possible now because the world editor makes it relatively easy to add new assets to the game. That being said, the actual game makes it difficult to move the camera and get a good image, so I’ll probably use the world editor itself to create images for future asset spotlights.
This fence will get featured again eventually when I’ve had a chance to create a real texture for it, so look for that in the future.
I missed my self-set deadline of last night by just a smidge, but here’s this week’s asset spotlight: a stone bridge!
This bridge would fit in a medium-ish sized town because it’s pretty big and would clearly take quite a bit of material to make. Can I level with you guys here? This particular asset may not be completely finished. You might have surmised this by the terrible wood texture and the absolutely horrible, incomplete stone texture. I’m only showing you this view because the other side of the bridge is just flat gray. Anyway, there’s still some work to do but I wanted to get something posted regardless. Who knows, maybe one day there will be an actual game to play along with a community of actual players, and maybe I’ll ask some of those nice people to help me with the art in exchange for credits or recognition in the game? Make it kind of collaborative? I don’t know. There has to be an actual game first.
Anyway, I kind of rushed this out because I’ve been spending what little mental capacity I have on improving the world editor. You can now open a new scene, use an interactive brush to raise and lower the terrain, then save the changes out to a heightmap file. Of course, the heightmap is being written wrong right now so when you reload the scene using that file it puts all your changes in the wrong places, but I’m making progress nonetheless.
I’ll try a slightly less ambitious asset spotlight for next Friday, and hopefully post about world editor improvements before then. Stay tuned.
This is the first asset spotlight for the new project so I decided to go with something as simple and cliché as possible. So I made a crate.
This is a rendered image out of Blender, so it isn’t necessarily exactly how it will look in the game world, but it should be pretty close. I’m trying to keep everything as resource-light as I possibly can, so this crate has 240 triangles and a single diffuse texture that is 256×256. The triangle count is actually a little higher than I expected but I wanted some minor wobbles in the actual geometry to try and make it look a little more interesting, and unfortunately that requires triangles. Still, 240 is pretty low for a game asset of any size at all.
I’m okay with the look of the crate overall but the wood texture needs some work. I don’t even have a drawing tablet right now so with my limited art skills and dragging around a clunky mouse this was the best I could do. I will eventually redraw that. The metal isn’t exactly professional quality, but I’m still fairly happy with it for the time being.
Once the game is a little farther along I will do asset spotlights using renders from the actual game, but for now you can at least see where I’m trying to go with this.
Speaking of the game world, I found the code for the world editor I had previously written so I am in the process of tweaking that to work for the new environment of this iteration of the game. That should save me a ton of time because the editor is already around 1800 lines of code, and tweaking that much code base rather that rewriting from scratch will be a big help.
I’m going to try really hard to post to the blog every Friday this month and so far I’m off to a good start, so fingers crossed I’ll see you in a week with another update.
Since the first quest in the game takes place on a farm, I thought I’d start making some farm assets. Here’s what I came up with.
You can sort of make out the weird, sad fruits on the plants in the field. I thought that was kind of funny.
Here’s that fishing shack I mentioned.
The ground and the water are just placeholders so that the building wouldn’t just be floating. I added some crates around the back door as a part of this asset, but I’ll probably end up separating those off and placing them in the world editor. That way the terrain will be a little easier to create around this building, and I can just place the boxes on the ground wherever it ends up. This whole thing is, of course, subject to change since I don’t really have story built around the building yet, but I still think it looks pretty nice.
It’s kind of weird to call this a “forest” because there are zero trees so far, but here you go:
The lighting is bad but you can at least sort of make out the farmhouse, a crate, a wheelbarrow, and a lamp post. All of these objects were added to and saved into the scene by the world editor. I moved them all into place and rotated them around to look the way I wanted. Again, this was all done in the world editor!! You can still see the purple test boxes because I haven’t put in the object removal functionality yet, but it’s coming. This also demonstrates how important light editing features are going to be. All in all I’m so excited to be at this point. The world editor’s controls are a bit awkward but the whole thing absolutely works and that’s the part that’s important for now.
I modeled a little tree today.
I like this one because it leans a little and has the crotch right below the leaves, but also because it’s exactly 100 triangles. It will be fun to see just how low-poly I can create more complicated objects and still keep things interesting.
The truth is that I really don’t want to dig into the camera controls for the game. Since I’m using a FollowCamera it does a lot of the work for me but also sort of hides most of the details. For instance, I was trying to do some very basic mouse event capture and was getting weird results. I can only assume this is because BabylonJS is capturing mouse events as part of the FollowCamera, but I don’t really know. What’s happening is probably well documented somewhere but I haven’t taken the time to dig in and find out yet, so for now it’s a little frustrating. I didn’t really get anything done last night because there was a car wreck at the entrance to the neighborhood where I live and it took out the power for a big chunk of the night.
So, a distraction. The game needed some grass.Isn’t that maybe the most realistic grass you’ve ever seen in your life, including times you’ve seen actual grass with your actual eyeballs? It’s 24 triangles and, of course, no collider. So I can add a ton of these to the game without affecting performance much. Why, you ask, not just use a texture on a plane? After all, that’s just 2 triangles. True, but I’m trying to stick to a “materials only” style for performance reasons. This model is actually a solid object with volume. I may try to make some other grass that’s just a double-sided flat mesh. I know BabylonJS can handle double-sided materials, but I’m not 100% sure how to tell it in Blender that’s what I want. Also, I may eventually make an exception to the no textures rule for simple elements like this since I can keep the texture sizes very small. We’ll see.
I made a huge tree.You can see the tiny character reference next to it. Now I’m going to stick a bunch of these into Penrith Forest.
It’s potatoes. This is a Polish rock.Ok, it’s not a Polish rock. It’s a normal rock. And it took like 45 seconds to model, so I tried to do something a little humorous to break up the monotony of posting a picture of a virtual rock. I hope no one is offended. This is rock001. Which means I can make 998 more individual rock models of this same amazing quality before I need to change my asset naming scheme, so get ready.