Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

First commit #3

Merged
merged 10 commits into from
Mar 14, 2022
Merged

First commit #3

merged 10 commits into from
Mar 14, 2022

Conversation

ollisco
Copy link
Collaborator

@ollisco ollisco commented Mar 12, 2022

Closes #1, #2
This is the first official commit to the project where I added the base crates for the rust development process and GitHub Workflows folder with a base action to check the rust code.

If you have any ideas or opinions, please share them.

@ollisco ollisco self-assigned this Mar 12, 2022
@ollisco ollisco added Enhancement🚀 New feature or request Game Engine👨‍💻 This is related to the Game Engiene IDE🖥️ This is related to the IDE labels Mar 12, 2022
@ollisco ollisco linked an issue Mar 12, 2022 that may be closed by this pull request
@foodelevator
Copy link
Collaborator

Since a lot of code will be shared between the two binary crates I think we should make a cargo workspace in the root folder. This would also sinplify the CI/CD since the whole project can be checked with one command

@lukasfri
Copy link
Collaborator

Since a lot of code will be shared between the two binary crates I think we should make a cargo workspace in the root folder. This would also sinplify the CI/CD since the whole project can be checked with one command

Isn't this a one-sided relationship since the IDE imports all of the game engine but the game engine imports nothing? I agree a workspace makes sense just in general, but rather just because it is easier to manage.

@foodelevator
Copy link
Collaborator

It would probably make our lives easier if we would split the code base up in several library crates (such as ecs, graphics, physics, sound, scripting, etc, and some kind of core that binds most things together) and two binary crates, one which is an IDE/Editor and one used when distibuting a game.

The binary crates would (in)directly depend on (almost?) everything and there would be a few dependencies between the library crates.

@lukasfri
Copy link
Collaborator

lukasfri commented Mar 13, 2022

It would probably make our lives easier if we would split the code base up in several library crates (such as ecs, graphics, physics, sound, scripting, etc, and some kind of core that binds most things together) and two binary crates, one which is an IDE/Editor and one used when distibuting a game.

The binary crates would (in)directly depend on (almost?) everything and there would be a few dependencies between the library crates.

Yes I agree if we want to go that route then ofcourse it makes sense. I do like that approach even tho it can become a bit too convoluted at times. I don't think we should use it to an unnecessary degree and generally be taken on a case by case basis. How detailed would we want it to be? Should animating movements etc be a separate crate? Should 3D models be a separate one, should 2D sprites be one(assuming we plan on supporting them? To what degree do we break it down? Maybe seems a bit unneeded to decide right now, but food for thought.

@ollisco
Copy link
Collaborator Author

ollisco commented Mar 13, 2022

Since a lot of code will be shared between the two binary crates I think we should make a cargo workspace in the root folder. This would also sinplify the CI/CD since the whole project can be checked with one command

Like @DreamplaySE said,
Do we want our code to be shared both ways?
Also, the upside of having "duplicate code" where ide and game engine has its own runs is that you can see easily if the job failed while checking the IDE or the Game Engine without having to look at the error message.

Olle Jernström WSL and others added 3 commits March 13, 2022 19:19
* Rename `game_engine` to `game-engine`

* Create cargo workspace; Add `Cargo.lock` to repo

* Fix github workflow
@ollisco ollisco merged commit ac7a205 into main Mar 14, 2022
@ollisco ollisco deleted the ollejer/first-commit branch March 14, 2022 09:48
@foodelevator foodelevator restored the ollejer/first-commit branch April 18, 2022 10:08
@foodelevator foodelevator deleted the ollejer/first-commit branch April 18, 2022 10:11
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Enhancement🚀 New feature or request Game Engine👨‍💻 This is related to the Game Engiene IDE🖥️ This is related to the IDE
Projects
None yet
Development

Successfully merging this pull request may close these issues.

Setup Root Project Add CI/CD
3 participants