Code Monkey home page Code Monkey logo

moonlibs's People

Contributors

stetre avatar

Stargazers

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

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

moonlibs's Issues

Skeletal/3D Animation library

Is there something about a way to animate 3D models? This collection of libraries has it all packed together, graphics, loading assets, audio, windowing, physics... But an animation lib is missing from it, is there a way I can get one, or is something being built already? Ozz Animation library seems a good one to port, tho ima try it with cffi library, reraging things to work with lua using the C API takes sometime.

Alternative renderers

First I'll link something I found today which could be used as a renderer:
https://github.com/zauonlok/renderer

Now onto the main one/s that I wanted to know if you plan to make a library for, X11 & Wayland, instead of taking GPU resources from a simultaneously running game (look here for an example of how that would happen, https://github.com/awsdert/gasp) a straight up hook to the common base libraries that linux distros use would be helpful in reducing slowdown. In meantime I'm gonna ask the nuklear developer if there is a non-framerate mode (ie only redraw after a call to nkupdate or something)

LuaJIT support

I was wondering if there are any plans to add support to LuaJIT for this project. Thank you.

Most all libs fail to build

Hi,
I've been trying to build the libs on Arch, I have all depends but I'm getting errors building, and it happens to pretty much every single library. I will have to attach the errors really because they're just too big.

Chipmunk
OpenGL
GLFW
GLMath

I thought I would post this issue here as every single lib fails to build for me and I have absolutely no idea why because libs that use opengl and glfw simply build and run perfectly fine (Raylib as an example).

Thanks!

Wonderful project - congratulations

Just wanted to bring you many bows and thanks for such an awesome and useful project!
The approach of offering bindings is so clean and proper for idiomatic lua.
A nice intro on how we could do 'moon'-ish like bindings would be awesome.
Do you have any plans to bring other popular bindings to moonlibs such as:

I am actually trying myself to modify https://github.com/starwing/lua-nanovg.git to make it work on msys and linux(the original author only offers OSX :( ) but I am very bad at it (in https://github.com/iongion/lua-nanovg)

Update to Lua 5.4

I'm not sure if 5.4 has any useful features for this project, but the reason I would like it is so these libraries work with other Lua libraries that have updated.

I know it says in the README >= 5.3 but I get this error when using 5.4: undefined symbol: lua_newuserdata which I believe is because moonvulkan is using liblua 5.4 and newuserdata doesn't exist in that.

A Compiled, Ready To Go Release For Each Sub-Project

Perhaps the main things I am noticing that there is only one major issue with are the fact that none of these builds have compiled releases. I will be using LWJGL as a comparator in this suggestion, as I can see MoonLibs becoming even better than it.

In my limited experience as someone who is external to the project and looking in with heavy interest, if you made a release build, even an unstable one, it would make development with MoonLibs extremely easy.

What I am saying is: What you have here is literally the LWJGL (Light Weight Java Game Library) for Lua development. The only issue I noticed is, getting it up and running is a bit of a mountain to climb, especially on Windows systems.

Perhaps an auto build, or maybe a script to build for the developer per sub-project of MoonLibs could be incorporated?

If we look at LWJGL we have two options. Source code and precompiled JARs.

In the scenario with source code, MoonLibs has the inferior position in the fact that you can literally drag and drop them into the projects folder as you need them, BUT, they must be compiled with dependencies on the dev's system.

In the scenario where releases are made which contain the packaged compiled code which can be used as needed, the dev can simply get the released zips or .tar.gz files that have the compiled code into the folder and get up and running. Focusing on how to best utilize MoonLibs and then focusing on their actual project instead of how to get it running. After this all you need to do is drop a Lua executable into the project with a batch/shell script to automate running the main.lua. The only current issue is that dependencies are holding this back from being a painless process. Where as LWJGL has the JARs that have the precompiled code, MoonLibs only have source code which the dev must compile in order to utilize it.

Hopefully this makes sense, I am rooting for this project from the side lines and I hope to see it flourish. Thank you.

ImGui Bindings?

Hello,
I was wondering if you were thinking of making a bindings for ImGui

Thank You!

Creating an executable that others can run

I spent quite a bit of time trying to figure out how to make scripts made with these libraries run on other people's computers so I figured this is something that could be on the README to make it easier for others. The way I did it was installing all libraries I needed using the Windows instructions, then creating a simple file that will read the script I want to run. That file looks like this:

#include "lua.h"
#include "lualib.h"
#include "lauxlib.h"

int main() {
  lua_State *L = luaL_newstate();
  luaL_openlibs(L);    

  if (luaL_loadfile(L, "main.lua") != LUA_OK) {
    printf("lua: %s\n", lua_tostring(L, -1));
  }

  if (lua_pcall(L, 0, 0, 0) != LUA_OK) {
    printf("lua: %s\n", lua_tostring(L, -1));
  }

  lua_close(L);
  return 0;
}

main.lua simply contains the code you want to run, in this case it contains the example script from the moongl readme. After compiling this with cc main.c -o main -llua you'll get an .exe and then you need bundle it with: the dlls from each library used in the script, in this case it would be moongl.dll and moonglfw.dll, which can be found in C:\msys64\mingw64\lib\lua\5.3; the Lua files that each library requires, which can be found in C:\msys64\mingw64\share\lua\5.3; and the dlls that each library uses. This was the hardest part because when you don't have those there's no error messages telling you exactly what's missing, it just says the module couldn't be loaded... For this example the needed dlls were glew32.dll and glfw3.dll which can be found in C:\msys64\mingw64\bin.

With all this together other people will be able to run exes created with these libraries. I only tested this for moongl and moonglfw so far but I imagine all other libraries are similar. If there's a simpler/more straightforward way of doing it I would also appreciate knowing about it if you could tell me. Thanks!

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.