Coder Social home page Coder Social logo

Comments (7)

bitbrain avatar bitbrain commented on August 26, 2024 3

Another name idea for this repo could be simply godot-fmod

from fmod-gdextension.

bitbrain avatar bitbrain commented on August 26, 2024 2

Made already some decent progress on #123 but there is still some way to go (see TODOs). Eventually, once the PR gets merged into the godot-4.x branch we might want to consider asking some non-technical questions:

  • when should we do the "official switch" to the Godot 4 branch as the default one? (so the current master becomes godot-3.x and is probably just maintenance then?)
  • should we consider renaming this repository once we do the switch? fmod-gdnative makes sense for Godot 3 but something like fmod-gdextension might be a better name for Godot 4 once we do the swap

from fmod-gdextension.

piiertho avatar piiertho commented on August 26, 2024 1

Hello ! This ticket is definitely a good idea.
I think we should stay with this repo for now, as we rely on godot-cpp.
I would do what we do on godot Kotlin repository: stay with master bind to current official version, and create a 4.0-adaptation branch to work and PR from for 4.0 work.
When we want to add a feature to both 3.x and 4.0, we would first do it on master, and then rebase the 4.0-adaptation branch.
By doing this way, we will keep a linear history.

from fmod-gdextension.

bitbrain avatar bitbrain commented on August 26, 2024

@piiertho I will have a dabble at this as well, simply because I am planning to upgrade my game to Godot 4 and this plugin is the biggest blocker at the moment (Dialogic 2 is currently actively migrated to Godot 4 already)

In case you are curious what I am building with FMOD (all ingame sounds + NPC voices come from this plugin)

from fmod-gdextension.

bitbrain avatar bitbrain commented on August 26, 2024

Started off with something very basic: https://github.com/utopia-rise/fmod-gdnative/compare/godot-4.0-adaption

Looks like includes need adjustments for sure:

fmod-gdnative\src\godot_fmod.h(4): fatal error C1083: Cannot open include file: 'Godot.hpp': No such file or directory

This tutorial suggests that now includes look more like this:

#include <classes/control.hpp>
#include <classes/global_constants.hpp>
#include <classes/viewport.hpp>
#include <core/binder_common.hpp>

Also, gdscript syntax changed completely. I am also not sure yet how we are going to "ship" the addon, as it seems to be in the format of something along the lines of fmod.gdextension with some *.dll files on the side. Can we just use it as an addon? Will this work? or do *.gdextension files need to go into the root directory of any Godot project?

I'll have a play!

from fmod-gdextension.

SeanLatimer avatar SeanLatimer commented on August 26, 2024

I had a poke at the godot-4.x branch recently and found an issue with exported projects where calls to Fmod.load_file_as_sound (possibly load_file_as_music too) cause an access violation. With those components removed, the demo project does export and play the other sounds from banks correctly.

from fmod-gdextension.

nickpolet avatar nickpolet commented on August 26, 2024

Has there been much update to this? Really hoping that a stable godot 4.x fmod plugin makes it's way to the asset store eventually. Once you've seen what fmod can do, it's tricky going back to godot's default audio system.

from fmod-gdextension.

Related Issues (20)

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.