Skip to main content

On Sale: GamesAssetsToolsTabletopComics
Indie game storeFree gamesFun gamesHorror games
Game developmentAssetsComics
SalesBundles
Jobs
TagsGame Engines
(+2)

Thanks for playing our game.

Here's a brief explanation of how the sprites were split:

  • Each level was represented by a 2D grid. Each tile in the grid stored data (mainly its x-y coordinates and an enum saying what it is (eg. meat, empty etc.)). This was initialized at the start of the level.
  • Each of these tiles in the grid were represented in the game using an invisible box collider. When the knife cuts the colliders the tile in the grid becomes an empty tile.
  • Then after each cut "chunks" is created using the grid, with all connected tiles of the same ingredient type being places in the same chunk. 
  • Then once chunks are created they looped through all the tiles that it includes to sample pixel values from an image of the boards initial setup. since the x-y coordinates stored in each tile are still unchanged from what it was originally on the initial layout of the level.
  • Then a new sprite is generated using those pixel values and realigned with where the colliders actually exist in the game world. 
  • Then all previous sprites are destroyed.

Yeah its a really inefficient process... but it is what we ended up throwing together within the jam time.   Yeah the pickup indicator was meant to make it seem like the food was above the others in terms of depth perception, but because the shape comparer logic ended up more strict than we initially intended, I can see how it caused problems. But over there was some visual effects stuff that we didn't get the time to implement eg. proper food layering and, making outlines of the food after cutting etc. But glad you enjoyed it still. 

 And yes I have played your game and enjoyed it.

(1 edit)

Wow, that's a pretty impressive system to set up for a jam game! and its better than my first thought, witch would be just create a game object for every pixel (obviously very inefficient). The system you already have seems quite developed, and it wouldn't be too hard starting from there to optimize it even further! Hats off you you for doing this in only four days!

(+1)

that was my first solution.... until my frame rates tanked to 10 fps when dragging the objects around