Frequent readers will be aware that I've been exploring adding animated sex scenes to Private Dick.
Well, sadly things have taken a bit of a bad turn over the last month. I've decided to pause the whole animation project and re-focus instead on the early access release. This is a good sensible move and probably good news for all of you - but man, I'm really bummed out about it.
[h1]Animation just isn't working[/h1]
I keep hitting little snags with animation. Little things that don't work. Code blocks that are going to be too hard to maintain. Loops that just don't look enough. Assets that don't move in the right way.
There are basically two ways you can do animation. You can hand-draw each animated frames, like in a cartoon. But that's incredibly expensive - and inflexible. It is very hard to customise those animations.
Something I really like about Private Dick is that the player is allowed to interact with the scene, change the action, position, clothing. That's a key part of the game's DNA and that will never change. But hand drawing animations for every variation within those scenes is just not scalable.
So the other approach, my approach, is to manipulate an image in-game and basically just wiggle the bits. Cut a character art into pieces (head, body, boobs) and apply simple transformations to the parts to make them move. Bob the head up and down, or rotate it plus or minus a degree. This can be surprisingly effective!
This is cheaper for me because I can use more in-game automation and less hand-drawn frames of animation. It's also flexible because I can toggle layers, move things manually on screen, and generally code up the animation to look how I want. And I've had lots of successful little moments of breathing life into a static scene.
But on balance it just isn't working. I keep hitting little snags, or movements I can't animate, creating ugly skips. Or the code gets way too complex and so I still can't scale the scene to be as flexible as I want. Also the animations seem to be incredibly demanding on the CPU, massively spiking up usage to a degree that I can't quite understand.
And it's frustrating because surely this can work. I keep walking away from the screen, then having another idea and coming back and burning another two hours trying to get the effect I'm looking for. Other Ren'Py games have animation, what am I doing wrong?
Even as I write this I'm thinking "but what about this...". And the point of all this isn't that good animation is impossible - it's that for me, right now, it's taking too much of my time and holding the project back.
So. No more. At least for a while.
I really wanted to post some WIP gifs of some of the better stuff. But as I'm not planning to deliver it, and it's not representative of the game's state right now, I've decided not to. Sorry for hyping that up and then backing off - it just hasn't gone to plan.
[h1]General Update[/h1]
To be honest the project isn't in a great state right now. The codebase is rotting, eroding, losing integrity. That happens when you keep dipping in for a quick fix without really thinking things through, as I've been forced to do recently.
I've upgraded the engine to the latest version - a job I've been putting off for forever. Everything seems to work but I am noticing little issues. Like a blur graphical effect I was using started producing strange artefacts. Or the in-game console text, which I use for debugging, renders super blurry, so it's actually quite hard for me to read.
The last six months have been really rough, with limited dev time. I've been focusing on asset production, trying to keep my team productive, stockpiling art, music and voice for integration. But day by day I find myself losing bits of context. I am doing too little work on the codebase, and it is slipping backwards.
I am not whining's sake. I do not want to install a panic and have you think I'm never going to finish the game. I am trying to be honest about the development cycle and explain why things are taking so long.
[h1]Moving Forward[/h1]
So, what can we do about this? Well, all I can do is find more time. Re-focus on the project, re-settle in the codebase, fix the outstanding issues one at a time, mix in the voicework, take my time and get it right.
In a weird way, one of the hardest problems is feeling rushed all the time. When you get a two hour window to work on the game it affects your priorities. You make bad decisions, you rush key steps, you avoid doing the groundwork and just try and to the fancy bits.
But good news is coming on this front. I'm just finishing up a side project (Lewd Mod: Noir) which is going to free up some of my time. And I expect to be able to wind down my contract hours in April, giving more time all around for gamedev.
So let's see. I expect it'll be slow until April.
Sorry it's a bit of a bummer of a post. But friends, I'm not going anywhere, I'm not giving up, and I am going to get this game shipped.
Cisco