Sushi Shop Simulator Devlog #1: Making a scene
January 1, 2024, by Croc
Hello! Welcome to my Devlog to me making my first every game using Bevy, or really my first devlog ever. This blog is mostly for myself to look back and see what I have learned overtime using the rust-based game engine: Bevy. For those who are curious, I will give some pretext for why I am using bevy over any other game engine, and what I am trying to achieve.
Why Bevy?
If I am going to be perfectly honest, the one and only reason I am using bevy over any other engine, is because I fell in love with Rust about 6 months ago. Out of all the languages that I have experimented with, Rust personally connected the most with me. Bevy is a rust based game engine, so naturally I gravitated towards that. Before using Bevy, my experience with game making was exclusively making random experiences with Roblox studio. Unlike Roblox Studio, Bevy doesn’t have any sort of official editor.
Due to Unity drama that happened a couple months ago, I steered clear of it (also because I’ve had some horrific experience with C++… yesh). I did try Godot some, but just didn’t care for programming in “GDScript” or C#. So, Bevy it is!
This project is going to be a smaller project that I want to work on before I work on “the next big thing(tm),” so I’m hoping that I get this project out within the next month? Who knows lol.
Goals:
Here is what I want to achieve with making this project:
- make the project able to run on web-browser (probably hosted on itch.io)
- figure out how ECS (entity component system) works
- learn how to make UI
- learn everything about scenes + 3d game making
And here is what the gameloop is going to be:
- You own a sushi shop
- purchase sushi ingrediants
- make sushi at the cutting board to make money
- making sushi makes dirty dishes
- clean dirty dishes if all dishes are dirty
- get billed at the end of the day, if you go negative you lose
Making scenes
All my scenes are going to be 3D, however I plan to make it so that you switch between scenes using buttons at the bottom of your screen. I downloaded assets from poly.pizza and kenney.nl, and created these 3 scenes using blender:
Sushi shop scene
Dish washing scene
Storage/ place to buy more ingrediants
Admittingly, I think I spent a little too long working on making these scenes then just jumping right into Bevy but I did eventually get into it.
I exported each scene as a seperate .glb file. I noticed that .glb doesn’t have any lighting data/camera placement saved into it, so I have to place lights on my own in Bevy.
Before starting this project, I had watched this tutorial series on making a bevy game. I think that this was a good jumping off point! I sort of got carried away at the beginning of coding where I kept thinking of all the things that I needed to implement ect. ect., but after a while of getting frustrated I just simpled it down with a TODO list of just getting a scene on my screen. This was good, because I figured out quite quickly that the camera doesn’t work exactly like how I would expect it to as a Blender user.
I thought that I would be able to copy the transforms from blender and use those to create the new camera, but it seems like I need to work on making a debug menu where I can manually place the camera where I need it to be, then copy over the camera coordinates to hard code. Which, hopefully I get started on tomorrow + messing around with making this all work on a website.
So yeah, that’s my first devlog for the game! If you are a random stranger who is happening to be reading this, thanks for reading! Until next time.
First: You are here!
Next: TBD