[RFC] The UrhoBox (was Embedding Urho3d)

The exercise described here, somehow succeeded. The existing work on RPI and ARM, has been really helpful.

Summary: Embedd our engine in a Linux Embedded System that could be trimmed to only play urho3d games. Deploy the system on specific popular Hardware. In other words, the Urho3d-Only Video Game Console.

I am in the process of converting this exercise in a project, small website for downloading the images, instructions for building your own, etc etc. So I’d like to gather your comments (polluting the forums as less as possible) regarding:

Name: Propose a name for this. You can comment if some other proposal in this thread you specially like or dislike(indicate the reasoning in this case). As the background intention is to promote our engine, proposals containing urho are preferred.

Targets: If you would like to test or be involved, indicate which Raspberry PI models you own. Other boards are also welcome, but they must be yocto supported. Each build takes several hours, and ~50GB of disk space, therefore I need to go for the most relevant targets.

Project templates: The games would need to follow some standard, this standard we can be based in our already existing templates. Indicate if there is any template missing in this thread.

Game definition: Eventually there will be some kind of game selector(name wanted), as such, the project template should contain some kind of Game-Manifest. (Name, Desc, Genre, …)

Comments: Feel free to add your comments & Questions

Topics regarding games distribution like:

  • “How do I build my game for this platform?”,
  • “How will the system fetch/download my Game”

Will be addressed later on a third loop. My initial intention is maintain myself the opensourced and most close to a determined official template as part of the project, even preinstall them in the image.

Please read other users before posting, I beg you, 1 reply per user(edit your post as long as the following 2 weeks). As a start, I will give my own:


Name: UrhoTank(from fishTank, might sound warlike in many languages or relate to Tank games, which would be misleading)
Targets: Rasp 0w
Project Templates:

Game Definition: I don’t know previous exercises, or already defined standards, maybe from other gamming hubs. Initial proposal: Xml containing (Name, SubName, Description, Version, Genre, Sample Pictures, Requeriments Benchmark) Pictures should be contained in the Resources folder.
Comments: I already spoke way too much, hope this way of gathering information is ok, once everything is setup I can move most of discussions out.

4 Likes

Name:

  • The Fin – “powered by Urho3D”

Because this project (and it’s variations/installments) will be an important part of the fish, pushing it forward. This name also lends itself for a fin-shaped case design, like an organic Wii. Lastly it points to Finland, where it all began, while meaning “end” in French: α & ω :fish:

Project templates:
About the QtCreator wizards I would like to add that they have by no means acquired their final form; suggestions and pull requests are welcome. [ forum thread ]
For instance it currently expects qmake is used to build the project. This could be extended with cmake for instance. Also, as I made these wizards in isolation (without collaboration) their code should basically be considered unreviewed.

2 Likes

A little update update on how things are going:

Game Definition: As the the whole environment used for this is python based, currently a JSON file was the more straight forward way.
On how each game will be present in disk, I let the build environment dictate. A sample how the resulting structure is can be seen here and how it is created

Project Template: @Miegamicis Template has been integrated, and will be the base at least in this early beggining.

NAME: As seen in the post title, things urged to be named to create repositories and so on. I finally went with the initial name in the very first proposal: UrhoBox
Logos of a fish inside a semi-transparent box are welcome.

Game Distribution: The current idea on how games can be distributed is using already existing packaging (rpm, deb, ipk), as yocto creates them automatically. It will be necessary to be able to install in alternatives paths other than /.

Game Selector: I have started the development of a game selector is a very important piece. Will be the starting up program. It needs to:

  • Scan the available games on available disks, network, repositories, stores…
  • Be able to browse, download and launch them
  • Preferences (would be interesting if they could be shared among games…)
  • Reboot / Shutdown / Park the UrhoBox

What is Park? Park would turn UrhoBox into a standard linux system so people could install other application & services while UrhoBox does not act as a Gamming Machine.

Oh! and this piece of software will be called theFin

After now, Feel free to comment on any point.