Code Monkey home page Code Monkey logo

dpengine's Introduction

DPengine

An alternative experimental engine for Desktop Ponies written in C and GLSL and focused on performance. Don`t trust GitHub if it shows ObjC in the list of used languages, it`s pure C.

[WARNING:] This repo contains submodules (core/gif/load/, core/ogl/load/, exec/ctr/, exec/zip/, macos/load/), so don`t forget to specify --recursive when doing a git clone! As for GitHub ZIP downloader, unfortunately it still doesn`t support submodules as of now, so downloading a ZIP instead of cloning yields an incomplete copy.

Win32 GUI (as seen on Windows 98 SE):

Linux GUI (as seen on Arch Linux 4.6):

MacOS GUI (as seen on 10.15 Catalina, Dark UI mode):

To run properly, DPE requires the DP animation base, automatically downloading it from GitHub if possible. If for any reason DPE keeps failing to download it, the said directory needs to be manually put to any location on the local hard drive, after which DPE should be configured to use it: click the 'More Options...' button on the main window and choose the 'Animation base directory' so that it points to the parent directory of the animation base. After that, close DPE and execute it again. Enjoy!

The source code is meant to be built via either Code::Blocks IDE or makefiles included in the project.

N.B.: to be able to build on Windows using Code::Blocks 10.05, go to Settings → Compiler and Debugger → Toolchain Executables, and change 'Make program' to 'mingw32-make.exe'. It`s how it was meant to be. More recent versions ship with correct settings.

N.B.: to build and run DPE on Linux, install the following packages:

  1. make
  2. gcc
  3. mesa-common-dev
  4. libgtk2.0-dev
  5. libgtkglext1-dev
  6. libcurl4-openssl-dev
  7. libssl-dev

Releases

Binary releases are available for download. Building from source is no more necessary!

Release notes

The task at hand is to implement the remaining DP features missing from DPE:

  1. Interactions
  2. Games
  3. Profiles
  4. Screensaver
  5. Screen movement restriction, tab 2
  6. Audio (in doubt over its necessity, but whatever)

Some functionality is not present in DP but would also be nice to have:

  1. Implement the "alias method" for behaviours
  2. Parallelize sprite processing in frontend
  3. Move rendering options from tray menu to tab 3
  4. Add OS-specific options to tab 3

License

The source code and binaries are licensed under Creative Commons Attribution-NonCommercial-ShareAlike 3.0 Unported (CC BY-NC-SA 3.0). This means you are allowed to share and alter them, provided you give credit, do not use them for commercial purposes and release them under this same license.

The DP animation base is not a part of this project; see here for details on its license.

dpengine's People

Contributors

hidefromkgb avatar octylfractal avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar

Forkers

cenodis

dpengine's Issues

Corruption playing certain graphics

During the pinkacopter_left or _right.gifs is a strange corruption. The typhoon corruption happens during this animation, only during this animation, at exactly the same time. The animation even seems to work for a few loops which is the strangest thing, I looked at the gif itself in gimp and not a single frame is messed up. It is guaranteed to show up with 30 Pinkie Pies and you can remove it from poni.ini without problem, as in without causing another graphic to corrupt or something

https://u.smutty.horse/miihauudlkv.png
Its probably not a longterm link, just a visual of the static/hard rain pissing sideways graphical error

Arch Linux
RTX 2060 Super
linux-zen 5.18.13.zen1-1
proprietary nvidia-dkms driver 515.57-1

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.