https://github.com/1j01/makisu
Two sushi simulators (3D and retro 2.5D)
https://github.com/1j01/makisu
2d 2d-game 3d 3d-game bamboo fish food food-game game makisu makizushi rice seaweed sushi three-js threejs tic-80
Last synced: 16 days ago
JSON representation
Two sushi simulators (3D and retro 2.5D)
- Host: GitHub
- URL: https://github.com/1j01/makisu
- Owner: 1j01
- Created: 2024-08-03T05:27:57.000Z (over 1 year ago)
- Default Branch: main
- Last Pushed: 2024-08-29T22:33:42.000Z (over 1 year ago)
- Last Synced: 2025-01-16T06:16:56.740Z (about 1 year ago)
- Topics: 2d, 2d-game, 3d, 3d-game, bamboo, fish, food, food-game, game, makisu, makizushi, rice, seaweed, sushi, three-js, threejs, tic-80
- Language: JavaScript
- Homepage: https://1j01.github.io/makisu/
- Size: 6.51 MB
- Stars: 0
- Watchers: 1
- Forks: 0
- Open Issues: 6
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# Makisu: Sushi Making Simulator
## TIC-80 version (2D / 2.5D)

This is a sushi making simulator built in [TIC-80 tiny computer](http://tic80.com/), written in JavaScript.
It uses Verlet integration for point-based physics.
Use the makisu (bamboo mat) to roll and form the sushi.
đšī¸ [Play it here](https://1j01.github.io/makisu/tic-80/), or download the [cartridge file](./makisu.tic) and load it in TIC-80.
Features:
- Lovely pixel art for lots of sushi ingredients (not all are used in the game)
- Bowls of ingredients
- You can adjust the 3D effect (oblique projection) freely with the arrow keys, including making it fully 2D if you wish
- Physics are kinda janky but you can technically roll sushi if you're careful
- Secret music (not enabled in the game) imitating Katamari Damacy's theme music
## THREE.js version (3D)

This is a sushi making simulator using [THREE.js](https://threejs.org/), written in JavaScript.
It uses [cannon-es](https://github.com/pmndrs/cannon-es) for physics.
đšī¸ [Play it here](https://1j01.github.io/makisu/).
Features:
- Toolbar with camera and interaction tools
- Physics are kinda janky, but you could maybe convince yourself that you've sort of rolled a sushi roll, if you're very careful as well as undiscerning and generous with your imagination
- Grains of rice are just spheres, and fish slices are just boxes that look like damn erasers more than sashimi
- Mobile friendly UI
## Taichi.js version (2D)
This is a prototype, playing around with [taichi.js](https://taichi-js.com/)
They have examples of both 2D and 3D MPM (Material Point Method) simulations.
I've copied from the 2D example and added mouse control and distance constraints,
although it's not working quite as well as I'd like.
I'm not sure exactly how to build on top of MPM "correctly", adding constraints and such.
Also things can explode or disappear when reaching the edges of the screen (possibly due to NaNs or infinities).
đšī¸ [Try it here](https://1j01.github.io/makisu/taichi/).
## Development
### TIC-80
Use the [TIC-80](http://tic80.com/) to edit the cartridge file `makisu.tic`.
I've also been keeping track of old versions in `archive/` for some reason.
### Other versions
Any text editor and HTTP server will do.
A custom sushi-inspired theme is included for VS Code.
(It's not currently an extension, it's just defined as overrides in `.vscode/settings.json`.)