Bubblegum Sunday - Devlog 7 (Patreon)
Content
I’m going to go back to writing my dev logs as it allows me to be precise about what I want to say. I recorded the dev log and it was 40 minutes of me talking (!) and the amount of censoring I need to do to get it on YouTube will only get worse, so I might as well just not do it.
Part 1: The body design update
Last time we talked, I showed you these body designs.
I had actually gotten quite far with the art on this one.
Since then, a lot has happened. As you may know I was torn between going with a frontal pose or an angled pose, and the frontal one won out. However, something kept nagging in the back of my mind. I try to achieve a lot with this one pose, which makes things very hard. It needs to look neutral, but at the same time ‘show off’ all the best parts of the character, and look sexy as well! That’s hard. Really hard. I had some design goals in mind while choosing the front view (such as having a face-to-face feel with your character) but ultimately the drawbacks of the frontal view started weighing me down too much. Especially the pose bugged me, as it felt floaty and unbalanced. Combined with the fact that I realized I wouldn’t be able to combine 3 hips and 5 breast sizes together, I decided to try to tackle both problems in one go.
This sketch gave me a clearer idea of the new direction.
The above image shows how I’ve changed the design for the body types. Rather than having a mix-and-match system which ultimately gives you 15 different body types (some combinations which don’t make much sense) I decided to lock myself into 5 body types which all have their own qualities. The first one is the one everyone starts with, the second is the first progression step and the last 3 are optional. This helps bring more focus to the design as well as push down the amount of work needed to make all of them look good by a lot. This really solved a big problem for me and I felt a lot better about that direction. I also kept working hard on sketching angled views, because there were so many benefits to it, I had to make it work.
This sketch gave me an idea of what an angled view might be like.
This GIF visualizes the differences between the 5 body types.
Finally I got to these designs. They are currently the ones being worked on and I think these look so much better. The pose feels much more securely positioned and can handle all the different body types quite well, without looking awkward. Yes, we lose the frontal view and some of the intimacy, but what we gain is way more in terms of being able to show off breast shape, dick shape and size, hairstyles. All of this is better expressed in the angled view.
There are some issues with layer complexity that this angled view has, but I’m working hard on solving those. It mostly has to do with a certain type of hairstyle and how it lays on top of the body but goes behind the breast area. Using some clever masking it is hopefully possible to make that work without much of an issue.
Where the art is currently at.
The bottom line is that I'm feeling much happier with this approach. I'm especially happy with the 5 body types as I feel they all have their own style to them, and the player can choose for themselves which they feel more comfortable with.
Part 2: Technical challenges in Unity
Vivi has worked hard on figuring out some tough challenges to overcome in Unity. Our main problem is memory management. Since our primary platform is mobile we need to make sure phones can actually run the game. It may seem like a no-brainer, since there isn’t that much going on visually, but the problem lies in asset loading. Since the character is basically made up of many big and small pieces puzzled together, we are dealing with a lot of draw calls. Combine that with the fact that the art will be relatively high resolution compared to your typical mobile game with low res assets, and you are quickly struggling to keep a phone from crashing.
Dealing with many different assets (and working with the assumption we will more than likely end up with 1000+ different items to wear) means we need to really make sure the system can handle it without a hit to performance. This is something new for us so a lot of time has been put into researching and finding information on how to handle loading and unloading bits of information from the memory. Unity has a big backlog of information, but a lot of it is also either wrong, outdated, or mislabeled. This makes finding the right solution tricky.
Speaking of file size though, we have to somehow compress our assets, and this is turning out to be quite troublesome. A 500kb PNG seems innocent on disk, but becomes a 5MB file when loaded into the Unity engine. This means we quickly run out of memory once we start adding 50 to a 100 sprites to our draw calls. In this case, compression is pretty much mandatory.
Left: uncompressed. Right: compressed.
As you can see, the results of compression leaves my art looking like it’s been put through the grinder. The system also doesn’t offer much flexibility for us to achieve the best looking art. Right now we are still experimenting with what will be the ideal way to go. It’s a direct trade-off between the game running well (or at all) and the quality of the assets.
Lastly we are dealing with something called mipmaps. This is a system that allows sprites to be swapped out for lower resolution variations when the camera is further away (aka zoomed out.) In the first build we put out, you can see that zooming out leaves the artwork looking overly sharp and ugly. Mipmaps gives a smoother result, but gives us little control over when this happens, or which variation it will swap to. It also gives us some annoying issues to deal with, such as assets being cut and stitched together to leave little gaps between them. That last issue is tackled by redrawing the assets to allow for sprite overlap, but we only found this out after doing the testing, and completsely changes how I approach making these assets. Finally there is also the fact that mipmaps adds another 33% to the file size of each asset, so this also needs to be factored in.
Left: no mipmaps Right: mipmaps.
Mipmaps don't play well with pixel perfectly aligned assets.
Assets overlapping means there is no risk of sprites having gaps in them.
That brings us to where we are today. I would like to have a small build out soon, showing some of the working systems put together. Ideally this build contains the new character body, switching locations (simplified) and selecting clothes to try on.
I appreciate all the patience and the support for the project!
Love,
Alba & Vivi