2 puntos por GN⁺ 2024-01-12 | 2 comentarios | Compartir por WhatsApp
  • GodotOS es una interfaz con estilo de sistema operativo hecha únicamente con Godot, que ofrece exploración de carpetas, edición de archivos de texto, visualización de imágenes, ejecución de juegos y más dentro de una sola pantalla pulida
  • No es un sistema operativo real, sino una aplicación que parece uno, y apunta a ofrecer una interfaz que también pueda usarse en la web
  • La naturaleza del proyecto está más cerca de un juguete experimental que de una implementación seria de un SO, y busca llevar al límite las capacidades de diseño de UI en Godot
  • El escritorio apunta a un entorno minimalista, con pocas distracciones y agradable a la vista, y también funciona como un hub para agrupar fácilmente pequeños juegos y experiencias
  • GodotOS no es un proyecto afiliado a los desarrolladores de Godot Engine ni a la Godot Foundation

La interfaz que ofrece GodotOS

  • GodotOS es una interfaz con estilo de sistema operativo hecha únicamente con Godot
  • Dentro de una sola pantalla coherente permite realizar las siguientes tareas
    • Explorar carpetas
    • Editar archivos de texto
    • Ver imágenes
    • Jugar
    • Otras experiencias de tipo escritorio
  • Ofrece una interfaz integrada que también puede usarse en la web

Propósito y naturaleza del proyecto

  • GodotOS está más cerca de un proyecto experimental que de una implementación de sistema operativo real
  • El objetivo es poner a prueba los límites del diseño de UI posibles en Godot
  • El entorno de escritorio apunta a las siguientes características
    • Minimalista
    • Con pocas distracciones
    • Visualmente agradable

Un hub para reunir juegos y experiencias

  • GodotOS está diseñado como un hub que puede incluir fácilmente pequeños juegos y experiencias
  • Para agregar juegos directamente al menú de inicio, se puede revisar la guía de contribución

Cómo usarlo

  • La versión web puede probarse en la Itch.io page
  • Todas las versiones pueden descargarse desde la releases page
  • Hay un video de demostración disponible en Trailer

Limitaciones claras y aviso de no afiliación

  • GodotOS no es un sistema operativo real, sino una aplicación con una interfaz similar a la de un sistema operativo
  • GodotOS no está afiliado a los desarrolladores de Godot Engine ni a la Godot Foundation

2 comentarios

 
kayws426 2024-01-12

Es un juguete divertido.

 
GN⁺ 2024-01-12
Opiniones de Hacker News
  • Parece una excelente prueba de concepto para usar Godot como framework multiplataforma para aplicaciones de escritorio
    El paquete de distribución es muy simple, con un solo ejecutable y un solo archivo de datos, y el rendimiento también es excelente
    Como forma de ofrecer un paquete binario completamente autosuficiente e independiente de la distribución, parece mucho mejor que cosas tipo Flatpak, y en términos de rendimiento parece muy superior a Electron
    Tal vez las aplicaciones de escritorio hechas con motores de juegos sean la próxima gran tendencia

    • Desde el punto de vista de la UI, podría empeorar mucho
      Se terminan descartando funciones del sistema operativo como buen renderizado de texto, una interfaz coherente de edición de texto, accesibilidad y transparencia
      Tampoco creo que Godot sea intrínsecamente más rápido que Electron en una UI arbitraria
      Las apps de Godot suelen ser rápidas porque las hacen personas que quieren usar un motor de juegos y se preocupan por el rendimiento; si el desarrollador se preocupa por el rendimiento, Electron también puede ser lo bastante rápido, como VSCode
      Lo digo desde mi experiencia trabajando con motores de juegos
    • Totalmente de acuerdo
      Quería escribir un artículo sobre crear aplicaciones multiplataforma profesionales con Godot, y probablemente lo haga pronto
      En resumen, Godot es excelente como constructor de UI, y creo que mucha gente se está dando cuenta de eso poco a poco
      Hay muchas aplicaciones profesionales hechas con Godot[0], y también quiero mencionar Lorien[1], basada en Godot, que es mi app de pizarra favorita y que inspiró parcialmente este proyecto
      Godot no es perfecto y hay cosas que otras herramientas de creación de UI hacen mejor, pero tiene mucho potencial aún sin explorar
      [0]: https://alfredbaudisch.com/blog/gamedev/godot-engine/standal...
      [1]: https://github.com/mbrlabs/Lorien
    • Ya se está usando para eso
      Uso un programa llamado Dungeondraft[1], para crear mapas de TTRPG fácilmente, y está hecho sobre Godot
      La página de la API de modding[2] también menciona Godot
      [1]: https://dungeondraft.net/
      [2]: https://megasploot.github.io/DungeondraftModdingAPI/
    • No entiendo por qué en este hilo mezclan Flatpak con la forma de escribir UI de escritorio
      Aunque una app sea un binario único y autosuficiente, puede obtener los beneficios de Flatpak
      El sandboxing, la gestión de permisos, el aislamiento del sistema, la necesidad en distribuciones inmutables basadas en imágenes y un formato de paquete unificado que evita tener que crear deb o rpm por separado ayudan tanto a desarrolladores como a usuarios
      Esto tiene poco que ver con qué se use para escribir la UI, y un binario autosuficiente por sí solo no puede reemplazar por completo a Flatpak
    • Mientras pensaba en argumentos en contra, se me ocurrió que una GUI de modo inmediato no siempre podría ser adecuada, y encontré este artículo: https://stackoverflow.com/questions/47444189/what-are-the-pe...
      Otra desventaja que se me ocurre es que, desde el punto de vista del diseño, la aplicación tendría que tener el mismo lenguaje de diseño en todas las plataformas, por lo que sería difícil lograr una apariencia nativa en cada una
      ¿Habrá otras desventajas?
  • El propio IDE de Godot también es un “juego”, en el sentido de que está hecho por completo con la API de Godot
    De hecho, me pregunto si esto no podría ser un buen entorno para crear apps empresariales portables, como un Visual Basic moderno

    • Tendría los mismos problemas de Flutter, es decir, widgets no nativos y accesibilidad, pero probablemente con menos foco en ese caso de uso
  • Relacionado con esto, Grey Hack es un sistema operativo, red e internet falsos dentro de un juego multijugador cuyo objetivo es hackear
    Incluye hackearse entre sí y simula bastante bien las funciones básicas
    Puedes robar archivos o dejar archivos en otras computadoras, instalar software, ejecutar comandos desde la línea de comandos, incluidos imitaciones de varias herramientas, y también escribir tus propios programas

    • Ojalá algún día alguien haga bien un juego de hacking que emule cientos de pequeños servidores reales con varios sistemas operativos y vulnerabilidades
  • Podría tener utilidad en el mundo real
    Pensando en la industria del cine, un sistema operativo falso para mostrar a un personaje haciendo algo en una computadora es casi un cliché en sí mismo
    Hace poco, hablando con fans de la película Hackers, me preguntaron qué OS se había usado en la película, y respondí que lo que usaban todas las películas de los 90: Mac OS con elementos de UI falsos improvisados en Macromedia Director
    Después, Flash cumplió ese papel en las películas, y como los estudios de cine usan cada vez más motores de juegos para dar referencias de CG en tiempo real en el set, esto podría ser su versión moderna

  • Me parece que sería bueno que Godot tuviera un modo de compilación mínimo centrado en UI
    Es muy atractivo para UI renderizadas con GPU, y ya existen excelentes bibliotecas y plugins para crear componentes útiles en ingeniería o análisis de datos

    • Al compilar el motor desde el código fuente, se pueden desactivar muchas funciones de Godot[1]
      No sé cuánto se podrá reducir manteniendo la mayoría de los componentes 2D/3D, pero debería ser posible
      [1]: https://docs.godotengine.org/en/stable/contributing/developm...
    • Tengo entendido que ya existe algo así
      Con la flag custom_modules puedes elegir qué módulos de Godot compilar
      Por ejemplo, nosotros distribuimos un wasm pequeño para un juego web 2D en Godot
  • Godot es un excelente bloc de bocetos para crear este tipo de cosas.
    Una vez, mientras esperaba un vuelo en el aeropuerto, hice a las apuradas un bloc de notas para tablet eInk del juego ruso de lápiz y papel Virus War (“Война вирусов”), para poder jugarlo con mi pareja durante el vuelo.
    No era más que una cuadrícula con botones tocables en distintos estados, pero alcancé a tener un prototipo jugable antes de abordar.

  • Me recuerda a cuando, por ahí de 2005, los Sub OS estuvieron algo de moda en la comunidad de GameMaker.
    Parece que, si pasa suficiente tiempo, alguien siempre intenta crear una interfaz tipo sistema operativo dentro de algún motor de juegos.
    Era una buena forma de entender paradigmas de UI y usabilidad, más allá de crear mecánicas de juego, y me trae una nostalgia bastante agradable.

    • Me alegra que alguien más lo recuerde.
      Yo hice Tiagix OS y, hasta donde sé, fue uno de los primeros subOS que realmente tenía soporte para crear apps.
      Como tuve que hacerlo todo desde cero, aprendí mucho sobre toolkits de GUI.
    • Incluso después de tanto tiempo, parece que todavía hay actividad en esa “escena”.
      https://forum.gamemaker.io/index.php?threads/gm8-subos-proje...
    • También había sistemas operativos que corrían dentro del navegador.
      Normalmente tenían un shell de UI de sistema operativo y aplicaciones, pero lamentablemente olvidé sus nombres.
    • Recuerdo lo mismo en The Games Factory 2/Multimedia Fusion.
  • Dice: “GodotOS no es un sistema operativo real, sino una aplicación con una interfaz que parece un sistema operativo”. Pero, en realidad, ¿se puede decir que GodotOS sea menos sistema operativo que el Windows temprano?

  • Recuerdo cuando Notch estaba experimentando con un juego espacial usando un lenguaje ensamblador reducido hecho por él mismo.
    Lamentablemente dejó de trabajarlo, pero creo que el género de hackeo dentro de juegos todavía tiene mucho potencial.
    No algo tipo “presiona F para hackear”, sino iniciar sesión de verdad en un sistema y traer o cambiar algo.
    Un sistema operativo dentro del juego que se sienta real parece un buen avance.

    • Para quien tenga curiosidad: https://en.wikipedia.org/wiki/0x10c
      https://web.archive.org/web/20130905082541/http://dcpu.com/d...
    • En Factorio hay un mod que permite programar circuitos eléctricos en ensamblador, pero olvidé el nombre.
      Colocas una “instalación informática”, la conectas a la red de señales y luego abres una terminal para empezar a programar.
      Como la fábrica puede volverse muy compleja, tiene utilidad real, y es genial que puedas usar ítems como símbolos de señal para comunicarte de forma bastante sofisticada a través de cables.
      La velocidad de reloj del dispositivo estaba limitada a unas cuantas instrucciones por tick del juego.
    • Bitburner lo hace bastante bien.
      Es un juego idle con una emulación limitada de “sistema operativo”, pero las buenas soluciones requieren pensamiento real y conocimientos de programación.
      Terminas escribiendo scripts que escanean la red para encontrar puertos abiertos y “hackearlos” automáticamente, y luego equilibran de forma global la asignación de memoria de todos los sistemas según ciertos parámetros para que el hackeo sea lo más “rentable” posible.
      Fue divertido terminar creando comunicación básica por sockets, scripts que devuelven resultados de análisis a la PC de casa e incluso trading algorítmico en un mercado bursátil falso.
    • https://store.steampowered.com/app/716490/EXAPUNKS/
    • Aunque es más programación que hackeo, quizá te guste TIS-100.
      https://www.zachtronics.com/tis-100/
  • En la captura dice “GodotOS is a fake operating system”.
    Pero ¿realmente es falso? ¿El término “sistema operativo” implica necesariamente el nivel de la capa de hardware en la que se ejecuta?
    Si no, aunque se ejecute encima de otro SO, igual podría considerarse un SO.

    • Es un SO falso en el sentido de que en realidad es una aplicación, no algo que puedas ejecutar como sistema operativo al estilo de Linux o Windows.
      He sido bastante cuidadoso con la formulación porque no quiero dar una impresión equivocada al promocionarlo.
    • Me parece que la palabra sistema operativo implica la existencia de un kernel.