About Breadbox: Difference between revisions

From BreadboxWiki
Jump to navigation Jump to search
No edit summary
(24 intermediate revisions by the same user not shown)
Line 1: Line 1:
'''BREADBOX''' is a retro computer simulator program.
'''BREADBOX''' is a retro computer simulator program.


It's also a project under development and nothing has been released yet.
Available on [https://store.steampowered.com/app/1770440/Breadbox/ Steam Early Access].
 
Estimated to be available soon as [https://store.steampowered.com/app/1770440/Breadbox/ Steam Early Access].


== Objective ==
== Objective ==
Line 16: Line 14:




The principles work as a guidelines where this project aims for in a long term. Many current features are just an early adaptations and more work is required to get closer to these goals.
The principles serve as guidelines for the project. Many current features are just an early adaptations and more work is required to get closer to these goals.
 


== Why? ==
== Why? ==
Line 29: Line 26:


'''More reasons''' why the simulation might matter
'''More reasons''' why the simulation might matter
* Use of simulator will not harm your existing retro-hardware.
* Keep your real hardware unharmed.
* When you prefer the look & feel of a retro hardware while not using a real one.
* You prefer the look & feel of a retro hardware while not being able or just being lazy to use the real hardware.
* Virtual collection of retro computers
* Virtual collection of retro computers.
* Show offs and presentations
* Show offs and presentations.
 


== The Project ==
== The Project ==


This is going to be quite a massive project and in reality, it will never be fully finished.
This is going to be quite a massive project and in reality, it will never be fully finished. There will always be some computer model, additional peripheral, software feature or technical detail which is not yet implemented. Hence, the project will be developed dynamically and iteratively, additional features and models will be added piece by piece. Dynamic nature means also, that the speed of the progress is heavily affected by the public support.
 
There will always be some computer model, additional peripheral, software feature or technical detail which is not yet implemented. Hence, the project will be developed dynamically and iteratively, additional features and models will be added piece by piece.




=== Project status ===
=== Project status ===
# '''Development of Early access version''' <- current state
# Development of Early access version
# Beta testing
# Beta testing
# Release of Early access version
# Release of Early access version
# Maturing product - stage 1 (some bugfix releases)
# '''Maturing product''' (small development, bugfixes) <- current state
# Release with some additional model
# Maturing product - stage 2 (some bugfix releases)
# Transition to 'Full' release version
# Transition to 'Full' release version
# Continual release iterations with additional models and features
# Continual release iterations with additional models and features


=== Computer models included in current version ===
=== Computer models included in current version ===
Line 64: Line 54:
The most relevant 3D-objects, like computers, disk-drives, etc, are modelled in excellent quality. Some smaller objects e.g. PET IEEE-488 cable plug is just a mockup. Missing details, mockups and other low quality models will be done in some point.
The most relevant 3D-objects, like computers, disk-drives, etc, are modelled in excellent quality. Some smaller objects e.g. PET IEEE-488 cable plug is just a mockup. Missing details, mockups and other low quality models will be done in some point.


Scenes visual effects, e.g. lighting, shadows, materials, are still in early state. Some may think, that it is already very good, and yes, we are also quite happy with it. But honestly, expect a major improvements on this area, we aim for the photorealistic look!
Visual effects in the scenes, e.g. lighting, shadows, materials, are still in early state. Some may think, that it is already very good, and yes, we are also quite happy with it. But expect more improvements on this area, we aim for the photorealistic look!
 
 
=== State of emulation screen ===
 
'''streaming'''


Works just perfectly. Obviously, it will not be as fast as plain emulator, but a common user won't see any latency. Most gamers or other kind of heavy users will use a real machine or an emulator anyway. And still, you can play any game with Breabox just fine. So in our perspective, the current latency is sufficient for the simulator, but this is surely an area that will be constantly monitored and improved.
=== State of emulation ===


'''CRT shader'''
Emulator is an independent component, which handles the computer emulation part. In the end, the quality of the emulation depends on the current state of the emulator in use. In addition to that, there are also many features in the emulator, which are not supported in Breadbox integration. Some features that are relevant to simulation may be added later.


CRT shader is another early state version. It gives some look and feel of scanlines and pixels, but yeah, expect more later on.
'''Screen streaming'''


Works just perfectly. Obviously, it will not be as fast as plain emulator, but a common user won't see any latency. Most gamers or other kind of heavy users will use a real machine or an emulator anyway. And still, you can play any game with Breabox just fine. So in our perspective, the current latency is insignificant, but this is surely an area that needs to be constantly monitored.


=== State of user experience ===
=== State of user experience ===


User interface of the simulation is basically done as a First Person view. User is stationary in an imaginary desk with some relevant equipment available in front. Actions are done by point and click method.
User interface of the simulation is basically done as a First Person view. User is stationary in front of the virtual desk with some relevant devices and objects on the table. Actions are done by point and click method.
We know that there can be better ways to handle the user experience. But it's a long and laborous work even to prototype the other options. Current way is chosen because it will keep user in good control of everything and it's the easiest way to do this. We hope to prototype other methods in some point. In the mean time we keep improving the current option.


There are alternative ways to create the user experience. The current approach was chosen because it will give user good control over all actions and its implementation suits well for a small development team. We hope to prototype alternative approaches in the future. In the mean time we keep improving the current implementation.


=== State of realistic simulation ===
=== State of realistic simulation ===
Line 88: Line 74:
The simulator is designed to closely simulate real world activities with computers, peripherals and related items.
The simulator is designed to closely simulate real world activities with computers, peripherals and related items.


Current focus is on basic usage, like powering up and using the machinery, attaching different kind of media, floppy disks, tapes and cartridges. All this works already quite nicely, but lot of testing is still required.
Current focus is on basic usage, like powering up and using the machinery, attaching different kind of media, floppy disks, tapes and cartridges. All of this is already working very well, but there is still a lot to improve.


Lots of features related to this area, like 360 view, cable handling, monitor controls, are postponed to future releases.
Lots of features related to this area, like 360 view, cable handling, monitor controls, are postponed to future releases.
'''Monitor CRT shader'''
CRT shader is another early state version. It gives some look and feel of scanlines and pixels, but yeah, expect more later on.




=== Challenges ===
=== Challenges ===


Limited resources - small team.
Without proper funding the resources are very limited.
 


== Links ==
== Links ==

Revision as of 15:50, 11 July 2022

BREADBOX is a retro computer simulator program.

Available on Steam Early Access.

Objective

The aim of the project BREADBOX is to create immersive and visual user experience of retro computers in a realistic simulation.

Design and development principles

  • Emphasize aesthetics and design of retro computers and peripherals.
  • Immersive First Person view experience, with animated objects and mechanics, visual hardware and authentic sounds.
  • A fully working computers, with fluent emulator integration.
  • Realistic simulation


The principles serve as guidelines for the project. Many current features are just an early adaptations and more work is required to get closer to these goals.

Why?

To preserve computer culture (in part) of course.

We believe that preserving the authentic way of using retro computers and give people an opportunity to experience it, is a worthy project.

It's also quite essential to do this project while you can still find working computers and people who know how to operate them. It's much easier to create realistic simulator now, when you can test the functionalities with a real computers and peripherals, instead of 20 years from now, when it will be much more difficult. Multiple different kind of actions for preserving past computer culture have already been taken, and that is just great! But it looks like there is no simulator based solution, which emphasizes the visuals of a 8-bit-era computers and lets you see what you are actually using.


More reasons why the simulation might matter

  • Keep your real hardware unharmed.
  • You prefer the look & feel of a retro hardware while not being able or just being lazy to use the real hardware.
  • Virtual collection of retro computers.
  • Show offs and presentations.

The Project

This is going to be quite a massive project and in reality, it will never be fully finished. There will always be some computer model, additional peripheral, software feature or technical detail which is not yet implemented. Hence, the project will be developed dynamically and iteratively, additional features and models will be added piece by piece. Dynamic nature means also, that the speed of the progress is heavily affected by the public support.


Project status

  1. Development of Early access version
  2. Beta testing
  3. Release of Early access version
  4. Maturing product (small development, bugfixes) <- current state
  5. Transition to 'Full' release version
  6. Continual release iterations with additional models and features

Computer models included in current version

  • Commodore PET-2001-8
  • Commodore VIC-20
  • Commodore 64


State of visual look

The most relevant 3D-objects, like computers, disk-drives, etc, are modelled in excellent quality. Some smaller objects e.g. PET IEEE-488 cable plug is just a mockup. Missing details, mockups and other low quality models will be done in some point.

Visual effects in the scenes, e.g. lighting, shadows, materials, are still in early state. Some may think, that it is already very good, and yes, we are also quite happy with it. But expect more improvements on this area, we aim for the photorealistic look!

State of emulation

Emulator is an independent component, which handles the computer emulation part. In the end, the quality of the emulation depends on the current state of the emulator in use. In addition to that, there are also many features in the emulator, which are not supported in Breadbox integration. Some features that are relevant to simulation may be added later.

Screen streaming

Works just perfectly. Obviously, it will not be as fast as plain emulator, but a common user won't see any latency. Most gamers or other kind of heavy users will use a real machine or an emulator anyway. And still, you can play any game with Breabox just fine. So in our perspective, the current latency is insignificant, but this is surely an area that needs to be constantly monitored.

State of user experience

User interface of the simulation is basically done as a First Person view. User is stationary in front of the virtual desk with some relevant devices and objects on the table. Actions are done by point and click method.

There are alternative ways to create the user experience. The current approach was chosen because it will give user good control over all actions and its implementation suits well for a small development team. We hope to prototype alternative approaches in the future. In the mean time we keep improving the current implementation.

State of realistic simulation

The simulator is designed to closely simulate real world activities with computers, peripherals and related items.

Current focus is on basic usage, like powering up and using the machinery, attaching different kind of media, floppy disks, tapes and cartridges. All of this is already working very well, but there is still a lot to improve.

Lots of features related to this area, like 360 view, cable handling, monitor controls, are postponed to future releases.

Monitor CRT shader

CRT shader is another early state version. It gives some look and feel of scanlines and pixels, but yeah, expect more later on.


Challenges

Without proper funding the resources are very limited.

Links