News:

Printed Amstrad Addict magazine announced, check it out here!

Main Menu
avatar_ervin

Chunky Pixel Curator - WIP

Started by ervin, 16:17, 15 November 14

Previous topic - Next topic

0 Members and 1 Guest are viewing this topic.

ervin

Hi everyone.

Time for an update (hopefully they will become more regular in the near future!).

I've been working on my content creation tools over the last fortnight or so, and they are finished!

I now have an Excel spreadsheet whereby I can enter information sign text (game name etc.), sprite sheet configs (e.g. inks), sprite data (e.g. positions in sprite sheet, animation frames), sprite world positions in xyz coordinates, and footstep sounds. I then run VBA code behind the spreadsheet to turn the contents into z80 asm code, which can be compiled, exomised, and written to the DSK file.

This can all happen while the program is running in WinAPE. I run the write-to-disk code in WinAPE's assembler, and then walk out of the room I'm in (in-game, not my actual real-world room!), walk back in, and the changes will load in when the room reloads. It has made a *big* difference to productivity!

I've also fixed a small bug that occurred occasionally with the camera position after viewing an information sign's text (sometimes a minor position adjustment happened, which looked a bit messy).

In addition, there's a new toy to play with. It's a dev tool I've left in the code, that any of you can play around with.
This feature will likely stay in until the final version is ready, hopefully sometime in 2015.

It lets me move a sprite around in the game world, so I can fine-tune the position of each one in real time.
(However, the positions reset when the room is exited and re-entered).

Here's how it works:
(please note that the information sign is not affected by this - it doesn't count as an exhibit).

- press Z or X to cycle through the sprites, as per usual
- this will now display the visible sprite's XYZ coordinates (which has the unfortunate side-effect of slowing the program down, but I can live with that for now)
- the following keys can be pressed to move the sprite around:
- T = up
- Y = down
- U = left
- I = right
- O = away from camera
- P = toward camera

Please note that some values will crash the program (e.g. taking the sprite too high or too low). I haven't built any error checking into the movement code, as it is just intended as a quick and dirty tool to assist with sprite positioning.

I've attached the updated DSK file to the first post in this thread.
Blagger is the game contained in this version, as I wanted to see how many sprites I could to get into a room, and still have a playable frame rate.
(Roland will return soon, I promise!)

I hope you enjoy this new version!

Gryzor

Thanks for this...

And, ooh, just realised the pun with the program's name!

ervin

#52
Quote from: Gryzor on 19:21, 17 December 14
And, ooh, just realised the pun with the program's name!

Yes, the name went through many permutations before I found one that was not only a pun, but also made sense in the context of the game.  ;D

Also, I've managed to make the program run around 10% faster in the Blagger room!
The speed differences are less noticeable in rooms with less sprites, but rooms with more sprites will now be a bit smoother.  8)

I spent a lot of time researching improved maths routines for the multiplications and divisions required for all the 3D calculations. I was really surprised at the improvements they brought in.

I haven't uploaded this faster version yet, as there is one last optimisation I am keen to try...


ervin

#53
Righto, I think I've finished messing about with optimisation. It's about as fast as it's gonna get.
Got a bit sidetracked for a few weeks there... amazing how time flies when you're tearing your hair out trying to make something run a few percent faster!
;D

In order to test the program's speed (now that I'm all out of optimisation ideas) I thought I'd put good old Savage back in.
I've plonked him in the 3rd room, enterable via the door at the back of the Blagger room.
His room isn't totally finished. There is no sound, and I'm not sure if I'll add some animated fire.

I've gotta say, considering how huge he is on-screen, I'm absolutely chuffed with how fast the game runs in Savage's room!
8)

I've attached a new DSK to the first post in this thread, for anyone interested.
(Note that the ability to move sprites around in a room is not present in this version - it is commented out in the code as I didn't want it interfering with frame rate testing).

andycadley

Wow, that's really looking impressive. Looking forward to seeing what you do with this.  :)

ervin

#55
Quote from: andycadley on 00:49, 23 December 14
Wow, that's really looking impressive. Looking forward to seeing what you do with this.  :)

Thanks Andy.  :)
I'm looking forward to having some time to start ploughing content in!  ;D


ervin

Aaaaand suddenly a few weeks went by!

Development slowed down a bit over the last few weeks, due to Christmas and family holidays.
Back in the saddle now.
8)

A new version has been uploaded to the first post in the thread.

This version contains a couple of new gallery rooms.

I'm finding that the rooms look better and less cluttered when there are less things in them.
That's a good thing as it means content will take less time to produce/rip, and the framerate will also be higher.
It does however make it more difficult to select just what to put in a room!

Also, I've put in a bunch of optimisations; some for speed, but mostly for memory. After some reorganisation, and some hard decisions about sprite sheet sizes, I've got the main .BIN file down to 9.39KB, which I'm pretty chuffed with.

My dev toolchain has also seen a number of tweaks, making compilation, room definitions and map management quite a bit quicker and easier.

Finally, I've decided to leave sound out (at least for now).
If I'm ever going to finish this thing, I need to make some sacrifices, and different (albeit short) walking tunes for each room are taking too long.
I can live with this because it was always meant to be a graphical demo/celebration anyway.

I hope you all enjoy this latest version.

P.S. Look out for the big white bull in the Bruce Lee room. It looks great being scaled in real time!
;D


TFM

Great! Now I know what I do at this weekend.  :)
TFM of FutureSoft
Also visit the CPC and Plus users favorite OS: FutureOS - The Revolution on CPC6128 and 6128Plus

ervin

#58
Time for another update.

The main .BIN file is now down to 9.00KB.
It won't get any smaller - I don't envisage any more changes to it (unless I get time one day to put sound back in).

Also, the topic is no longer really about Programming, so I've created a new thread in the Games sub-forum, in order to perhaps get a bit more exposure for this project.
I hope that's ok.
8)

The new thread is located at:
Chunky Pixel Curator

(Yes, I initially spelled my own game incorrectly in the new thread title, and the thread forever has "chunk" instead of "chunky" in the URL).
:-[

New versions will from now on be uploaded to the first post of that thread.

Powered by SMFPacks Menu Editor Mod