What's being worked on?

  1. 2 years ago

    Hi all,

    What parts of Polycode are being worked on right now? I want to get involved in Polycode development, but I don't have a clear picture of what's going on in terms of development.

    I'm seeing some things about a new renderer and goodbye_cmake. Explanations of current efforts would be appreciated :)

    - Andy

  2. fodinabor

    7 Jun 2016 Administrator
    Edited 2 years ago by fodinabor

    Hey Andy,

    First: the current development happens on the goodbye_cmake branch.

    And now: there has been a complete rewrite of the renderer. The renderer is now threaded which improves the performance a lot.
    In the same time the Renderer got OpenGL ES compatible so we are currently porting Polycode to mobile platforms as Android and iOS. But also export to the web via emscripten is possible now.
    Android and iOS are mostly finished, emscripten is very experimental (and not so many features are supported, yet).

    As we removed CMake as building system we have (/had) to create all the project files for Linux, Mac, Windows, Android, UWP and iOS. This means we have to create projects for the Polycode core, ui and physics module. I think here we are finished mostly again - only iOS is missing 2D physics and ui module and UWP misses all modules I think.

    The scripting system has been extended and it is now easily possible to attach JavaScript or Lua scripts to Entities. But as we now support JS the Polycode Player, which interprets the apps created from within the Polycode IDE, has to be rewritten. Also the IDE will have to be adapted to support export to the mobile OSs.

    Also a todo: we have to fix the examples up to work with the current version - the build files for the C++ examples have to be created as well. Also I think it would be nice to port the Lua examples to JS as soon as the Player is ready.

    We have a VR module in Polycode that supports I think the DK 1 or the Oculus Rift.. this has to be updated as well (and maybe ported to HTC Vive? ;-))

    Some changes have to be adapted by the IDE as well.. e.g.: JavaScript highlighting has to be introduced, it would be cool if we could attach scripts to Entities in the EntityEditor as well.

    Stuff I and Ivan are doing right now:

    • I update the SDL core to SDL2 and maybe separate Text Input from Key Input
    • Ivan wants to replace many pointers by shared_pointers and also wants to merge the MaterialManager into the ResourcePools

    So I hope I have been able to give you a ... well I guess it's been a detailed overview of what has done and what has to be done.. and maybe you find something to work on.. if you want to tackle something you are free to join us on IRC (freenode.net #polycode) to talk about more details :)

    P.S.: the bold stuff is probably some good starting point

  3. Edited 2 years ago by sanghakchun

    That all sounds really exciting! I'm going to get a bit more familiar with the codebase, and then I'll see if there's a task I could tackle.

    Just curious: What was the rationale behind moving away from CMake? It sounds like a lot of work to maintain project files separately for all platforms.

  4. fodinabor

    7 Jun 2016 Administrator

    Well... both really has it's ups and downs...
    the build process using CMake for Polycode nearly takes years... (due to compilation of all the dependencies..) It's hard to add a library that does not use CMake on it's own - as you have to figure how the CMake build process should look like for their project

    without CMake we are providing the binary dependencies in a submodule in the repository which speeds up the build process really bad.

    All in all it's easier for (most) users to just take their distro's build files and hit: build.
    Also CMake has it's limitations and custom build-steps get ugly..

  5. That makes sense. Thanks :)

  6. I did put in a merge request a decent while back, that updated the SDL core to SDL2. It is based on master, but it should still work. My main reason for doing it was to help keep the Linux support somewhat up-to-date with the new window managers coming (which SDL2 adds support for).

    In addition, I have been slowly working on updating the VR module. I don't mind working with someone on it but figured I'd keep people informed that it is happening, even if slowly.

  7. fodinabor

    9 Jun 2016 Administrator
    Edited 2 years ago by fodinabor

    yeah I acutally used your PR as a starting point ;-)
    Some features were broken but I'm readying them. So thank you for your initial work!!

  8. Happy to help! :)

  9. Ivan

    9 Jun 2016 Administrator

    Yes, thank you, zeebok! My apologies for not merging some of the pull requests into master. The new branch was supposed to be a small diversion and has turned into a year-long rewrite of many major subsystems of the framework. :)

  10. Should I close my pull request if the code has already been used?

  11. Hi, will Lua be fully replaced by JavaScript release, and a possible Web port? It seems still a long way to go (according the development status in Git). Just starting to get used to Lua and like polycode alot.

  12. fodinabor

    12 Jun 2016 Administrator

    No, definitly not! We're just adding JS as an extra option.


or Sign Up to reply!