oamldev / oamlgodotmodule Goto Github PK
View Code? Open in Web Editor NEWoaml module for godot engine
License: MIT License
oaml module for godot engine
License: MIT License
Have you considered making the oamlGodotModule inherit from the Godot Node class, instead of from Reference? If so, were there any issues with doing so? Making it inherit from the Node class would make OAML slightly simpler to use it within Godot.
At present, OAML can only be used in Godot by instancing a variable within a script. Making it inherit from Node would have the following advantages:
It would allow Godot scripts to "extend" the oamlGodotModule class, making it possible for it to be a singleton. At present to make an OAML singleton in Godot, it is necessary to e.g. create a script extending the Node base class itself, and having OAML there as a member variable.
Scenes could instance OAML directly as nodes.
If you approve of the idea, I can make a pull request with the necessary changes.
I got bored and dabbed at your code a bit based on the random steam announcement.
https://steamcommunity.com/games/370070/announcements/detail/1805287364811530718
I believe audioplayer receive a reference of Audiostream which exports an audiostreamplayback which has the state. May I ask how your code plays audio without using Godot internal's audio drivers?
https://github.com/godotengine/godot/blob/master/scene/audio/audio_stream_player.h#L49
https://github.com/godotengine/godot/blob/master/scene/audio/audio_stream_player.cpp#L176
https://github.com/godotengine/godot/blob/master/scene/audio/audio_stream_player.h#L49
Hi,
Considering Godot 3.0 is now officially out, is there a reflection currently going on as to the fate of this module?
I am looking forward to see oaml support on latest Godot and could give it a go on my spare time, however with the massively breaking changes on Godot audio system I would be glad to get your insight as to what the general (re-)design should be.
Thanks a lot for your awesome work on oaml.
Hello and thank you for this Godot module.
I would like to report following issue:
Link to oaml repository (@ 6e3081d) is not up-to-date to compile oamlGodotModule, indeed LoadTrackProgress function was introduce in commit 07a9724
Here is the error log:
compiling oamlGodotModule.cpp (g++)
modules/oamlGodotModule/oamlGodotModule.cpp: In member function 'float oamlGodotModule::LoadTrackProgress(String)':
modules/oamlGodotModule/oamlGodotModule.cpp:117:20: error: 'class oamlApi' has no member named 'LoadTrackProgress'; did you mean 'LoadTrack'?
Replacing oaml directory with oaml master (git clone https://github.com/oamldev/oaml.git) compile correctly
Trying to compile Godot with this very module leads to a compilation error on aif.cpp
.
How to reproduce (tested on Linux Mint):
# Shallow clone Godot
git clone --depth 1 https://github.com/godotengine/godot.git my_compiler_issue
cd my_compiler_issue
# Add oamlGodotModule as submodule
git submodule add https://github.com/oamldev/oamlGodotModule.git modules/oamlGodotModule
git submodule update --init --recursive
# Compile!
scons platform=x11 tools=no bits=64 target=release_debug
Which will result in:
...
[Initial build] Compiling ==> modules/mbedtls/register_types.cpp
[Initial build] Compiling ==> modules/oamlGodotModule/oamlGodotModule.cpp
[Initial build] Compiling ==> modules/oamlGodotModule/register_types.cpp
[Initial build] Compiling ==> modules/oamlGodotModule/oaml/src/ByteBuffer.cpp
[Initial build] Compiling ==> modules/oamlGodotModule/oaml/src/aif.cpp
In file included from /usr/include/c++/5/thread:35:0,
from modules/oamlGodotModule/oaml/include/oamlBase.h:26,
from modules/oamlGodotModule/oaml/include/oamlCommon.h:85,
from modules/oamlGodotModule/oaml/src/aif.cpp:28:
/usr/include/c++/5/bits/c++0x_warning.h:32:2: error: #error This file requires compiler and library support for the ISO C++ 2011 standard. This support must be enabled with the -std=c++11 or -std=gnu++11 compiler options.
#error This file requires compiler and library support \
^
In file included from modules/oamlGodotModule/oaml/include/oamlCommon.h:85:0,
from modules/oamlGodotModule/oaml/src/aif.cpp:28:
modules/oamlGodotModule/oaml/include/oamlBase.h:37:7: error: 'thread' in namespace 'std' does not name a type
std::thread *bufferThread;
^
modules/oamlGodotModule/oaml/include/oamlBase.h:38:7: error: 'mutex' in namespace 'std' does not name a type
std::mutex mutex;
^
scons: *** [modules/oamlGodotModule/oaml/src/aif.x11.opt.debug.64.o] Error 1
scons: building terminated because of errors.
Is there any workaround to get this correctly? I guess this is related to commit "Added a thread (using std::thread) that processes the audio tracks, t…" in oamldev/oaml (oamldev/oaml@00c247e).
Looks like subsequent fix is not effective on every configuration.
Thanks a lot for your efforts!
A declarative, efficient, and flexible JavaScript library for building user interfaces.
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google ❤️ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.