Skip to content

DoggySazHi/Shanghai

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

54 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Desktop Shanghai

Putting Shanghai on your desktop, hopefully. Because you know you want one.

Attribution

The original artwork was found on Pixiv.

Code is derived from the Shimeiji application (Java). I also blame a certain someone for making me do this.

Building

Inherently a Wayland application, so you got to have wayland-protocols installed. It'll use wayland-scanner to generate the necessary headers. It's also CMake so you gotta do the usual cmake . && make dance.

There is also X11 support, and will be automatically handled by CMake if you are compiling within a X11 environment. In this scenario, GLFW will be used to handle window management and input events, with direct X11 manipulation of the window to handle input events.

There is also primitive code for running it on other platforms (running on GLFW), but it's not really tested. Debug it at your own risk. It handles Windows' z-order and window management, but not much else. macOS is also not supported, but it should be possible to run it on macOS with some modifications, like switching from OpenGLES to regular OpenGL.

Tasks

  • Rewrite into C++ from layer-shell.c
  • Load images as GL textures (uses stb_image)
  • Reverse engineer Shimeji's behavior
    • Implement the animation/agent state machine
    • Implement animation in EGL

About

dare ga, *dare ga*, can't be alive without you~

Resources

Stars

Watchers

Forks

Contributors