At 6.20 you say that the GDExtension exposes the same as GDScript. This is not true. From the article - "This allows dynamic libraries to be used by Godot in a way that is much better integrated than its predecessor, GDNative. Together with the godot-cpp library, GDExtension introduces a system that allows extending Godot to nearly the same level as statically linked C++ modules can.". So all of the internal c++ codebase is exposed via the headers.
@GenericInternetter3 жыл бұрын
Making Godot more C++ friendly is a huge step forward.
@Bruh-hd4rj2 жыл бұрын
Yes. 🗿
@onichan68972 жыл бұрын
also Rust friendly
@aatkarelse8218 Жыл бұрын
Nim freindly!
@SrObser3 жыл бұрын
gdnative was a bit of a pain to use. I hope this will be more streamlined.
@NymezWoW3 жыл бұрын
gdnative is so terrible to work with i abandoned godot because of it. I dont wan‘t to use some engine specific scripting language that has no ecosystem worth mentioning. And last time i tried C# it crashed on starting the game (simply the default new project on Linux). So i left. Maybe it‘s time to give Godot another chance now.
@mcp6133 жыл бұрын
Just saw the post from godot. Looks like a good improvement
@markwiering2 жыл бұрын
I have made several C++ programs with mathematical questions. These programs heavily rely on classes and overloaded operators, which is difficult to translate to GDscript, so I now prefer to integrate these C++ programs into Godot, for my educational game. :-) My idea was to put the classes filled with the mathematical operations into Godot using the GDnative method and then use these classes inside of GDscript, to ease my life as much as possible. :-D
@HonsHon3 жыл бұрын
This is freaking amazing holy shit can't wait for 4.
@Diveji3 жыл бұрын
Oh, so now the extensions are written exactly the same way as normal in-engine classes? That's very nice. I've been writing in C++ in Godot using a custom module and it was annoying me that whenever I wanted to look something up, I'd get results for GDNative, which would be named directly and still left me to figure out everything on my own by reading other classes from deep in engine code. Hopefully now searching for some Godot C++ related stuff will be useful thanks to that change
@Smaxx3 жыл бұрын
Definitely have to try it now. Creating bindings for our company developed library was a breeze with GDNative (so much more relaxed to debug etc. compared to Unity), going to be interesting what one can do with GDExtensions.😀
@snesmocha3 жыл бұрын
Gdnative just got trolled
@4R8YnTH3CH33F3 жыл бұрын
We do a little trolling
@prozacgodretro3 жыл бұрын
Edit: wait... maybe not...? This will finally make some of the more interesting engine add-ons an actual add-on... Like there was this really cool voxel add-on that you had to build the entire godot system to get working. Now it sounds like this will be capable of being an actual extension to the engine.
@SoftBreadSoft2 жыл бұрын
@@tarunchand3159 a (fast) voxel renderer requires hooking to the engine's renderer which might not be exposed fully to gdextensions
@kayomn2 жыл бұрын
@@SoftBreadSoft The rendering engine and physics servers have been reworked so they are able to be fully exposed to GDExtension for supplying custom implementations.
@SoftBreadSoft2 жыл бұрын
@@kayomn that is great news
@abendroid3 жыл бұрын
I'm learning Godot 3.x.x while also learn to code (I'm don't have programming background). Should I wait for this Godot 4 instead?
@captainswing40403 жыл бұрын
It would be great if Godot used C++ like unreal
@comedyclub3333 жыл бұрын
@Addmix No, you cannot. I mean, yes cou can use C++, but not "like unreal", where C++ is/was the main programming language integrating into the engine nearly the same way GDScript does with Godot.
@comedyclub3333 жыл бұрын
@Addmix Yeah, I think the term "like unreal" is lacking a proper definition to say whether Godot's approach is similar in look and feel or not.
@sphixy85773 жыл бұрын
R.I.P GDNATIVE
@blackcitadel373 жыл бұрын
F
@dhombios3 жыл бұрын
It would be great if they consider implementing automatic recompilation of gdextensions, so, if the source files get changed, scons is called automatically when running or exporting the project
@comedyclub3333 жыл бұрын
That would be a pain in the ass to use. Imagine you have to change a .h and the corresponding .c file at the same time (e.g. changing a function signature). What do you save first? Saving either of those would trigger the autorecompilation resulting in a compilation error (since they don't match anymore). Based on the project size compilation and error catching might take a while. Let's say it takes 30 seconds to compile your code. You would have to wait one minute just ebcause the autorecompiler thinks it is a good time to stupidly start compilation although your source files were not ready yet. There's a reason this is rarely used for C/C++ development. Autorecompile is mainly used in single-filetype based languages like typescript or with some python packages (if at all). Anyway, this is not a matter of the Godot team, it's a matter of the build sytem you use. In the case of Godot it will likely be SCons, but you are free to use CMake or whatever you prefer. The one you choose might actually have that feature. On the other hand, automatically recompiling/restarting your Godot project when the compiled libraries change may be a nice feature, though.
@dhombios3 жыл бұрын
@@comedyclub333 Autorecompilation just needs to be executed when the project is going to be run (a build and run option) or exported. Recompiling each time a .c file or a .h one has been changed wouldn’t make sense, as more changes might be needed before being able to execute the project
@comedyclub3333 жыл бұрын
@@dhombios Well, I understood it that way since you wrote that if your source file changes SCons should be triggered.
@amv_dream2 жыл бұрын
Question, is that working also like any C++ project when we want to add DLL or other types of Libs ? For exemple, It would be very great and powerfull that we can have heavy third parties like OpenCV or other C++ libs but it's lacking documentation for this subject. Any idea if it's possible ?
@saul85102 жыл бұрын
well with this you can use other physics engine like physx
@porky11183 жыл бұрын
I just want to use Rust with Godot in an easy way. This would make Godot much more interesting than it already is.
@_remblanc3 жыл бұрын
Well this does at least expand the possibilities for the godot rust project quite a lot
@andermetalbrasil3 жыл бұрын
I'm also eager to use the GDExtentions bindings for Rust when it's ready.
@DarkShroom3 жыл бұрын
if you want to waste time playing with programming languages why use Godot
@witokija3 жыл бұрын
@@DarkShroom Why do anything ever? Godot has cool features, Rust has cool features, and humans are curious beings.
@mr.mister3113 жыл бұрын
@@DarkShroom In my opinion, the developers have built a great engine architecture and an amazing editor, but made an absolutely horrendous decision on which type of language to mainly support. Not only is Rust literally about 100 times faster, you also won't have a complete mess of a codebase after adding like 5 files to your project. The problem with GDScript it is just like python (well, it's even slower actually). It's a language created with a focus on writing up code quickly with barely any thought as to how to go about organising said code. No proper enums, no structs, nothing to organize your code in another way than simply having 50 properties or lists that on a script, properties that aren't even typed mind you. There's not even a way to make private functions or variables. It's simply not an enjoyable way to work for a lot of game developers.
@luisz03393 жыл бұрын
Never got to use GDnative, but hey if this better then nice. My previous comment just got erase for no reason lmao. Btw, Dragonruby is free right now.
@gamefromscratch3 жыл бұрын
I've heard this a few times from people. Think something glitchy is happening with comments for the last week or so.
@luisz03393 жыл бұрын
@@gamefromscratch Ah I see. I thought it was something I said lol.
@Megalomaniakaal3 жыл бұрын
Did you perhaps include a link with the original comment?
@arthank1263 Жыл бұрын
"the instructions here are pretty straightforward" me, trying to set .ccls for vim. an entire day. and I still haven't figured it out am I stupid? it just won't see godot_cpp using beta 10 pls help
@user-js7ud9du2y2 жыл бұрын
unity has il2cpp that coverts c# to c++ i think its great.. but having to write direct c++ is probably better because writing a parser is complicated would be nice to have though
@Hacker_lyx3 жыл бұрын
yeah the old system wasn't hard to get set up but had a lot of quirks. and lack of documentation. hoping this "just works" but honestly it seems just using c# or GDscript is the way to go imo.
@comedyclub3333 жыл бұрын
Yeah, GDScript is definitely the way to go for most cases (maybe C# too). All those C/C++ options Godot offers are mainly there for the purpose of dealing with computational heavy tasks and bridging with SDKs (e.g for Steam) or other libraries (e.g. some fucked up shit like FFT or file en/decoding, etc.).
@skaruts3 жыл бұрын
Someone ought to make a playable first-person funeral, though. :)
@geshtu17603 жыл бұрын
Will Godot 4 still support other languages? I believe GDNative also previously allowed you to port your GDScript code to other languages like Rust?
@arshamshayan Жыл бұрын
Oh my god that's why I can't use c++ . I'm a beginner and I'm struggling😭
@publicmmi3 жыл бұрын
How "mature" is 4.0? Is it good enough for prototyping and playing with the engine or too unstable?
@gamefromscratch3 жыл бұрын
It seems to vary day by day. I'd wait till the first alpha or beta release for some stability
@comedyclub3333 жыл бұрын
Actually, as @Gamesfromscratch said it seems to vary day by day. But in the master branch on GitHub you can definitely find a compiling version of Godot 4 (it runs, but does not have to be stable). What I have heard in some forums by now you can use it for development without any concerns, but you should not use it for production since it is not yet meant to run stable.
@ArdelleLoung-s7mАй бұрын
Cruickshank Circles
@tinyBigGAMES3 жыл бұрын
Hmm, I can't seem to get this to work. I got everything built, loaded the project, get reference errors (signals, invalid index, etc.). Does it actually run for you?
@frankhuurman39553 жыл бұрын
It seems that one Godot Android question is hard to solve(or isn't implemented as far as I can tell from all the unanswered community questions) and I'm curious if you have an idea how to do it. Is it possible to run a process in the background on Android for a game made in Godot? Like notify the user if some X event happened or happens in game while you've got it running in the background. Or not even that, but keep on calculation some event by chance every second so when the user comes back the chance thing might have happened?
@BrettCrowers-b6dАй бұрын
Kulas Lock
@clonkex2 жыл бұрын
"libaries"
@Tala2n3 жыл бұрын
A video that capture the full procedure to set a GDextension could be interesting.
@ryan6513 жыл бұрын
I have a question, stems from descriptions I've heard of GDNative and now this successors name. Is this designed mostly as a way to extend the engine as opposed to programming game logic?
@gamefromscratch3 жыл бұрын
Yes, for the most part. I mean you could implement game logic in GDNative, but it probably wouldn't be an efficient use of your time.
@WorstDeveloper3 жыл бұрын
Can't wait to use Godot with Rust.
@sslaxx3 жыл бұрын
Seen people been doing that for months via GDNative.
@WorstDeveloper3 жыл бұрын
@@sslaxx Yeah I know, but I'd rather wait until Godot 4 is out and they have added support for that.
@guru3323 жыл бұрын
Will this expose C++ methods to C#?
@Kintah3 жыл бұрын
The fact that you did not cover the EAC and Battleye proton compatibility update makes me extremely disappointed.
@igorthelight3 жыл бұрын
Yep, that's strange :-)
@HonsHon3 жыл бұрын
Then again he is only one dude. Probably will get to that eventually
@Kintah3 жыл бұрын
@@HonsHon he said on twitter that it wouldn't make for a meaningful video
@gamefromscratch3 жыл бұрын
In terms of the news Epic anti-cheat is now on Linux, well... "Epic's Anti-Cheat software is now on Linux" would basically be the extent of the video. If I hadn't already covered it... twice ( gamefromscratch.com/epic-add-voice-and-anti-cheat-to-free-epic-online-services/ ++ gamefromscratch.com/epic-games-acquire-kamu-anti-cheat-software-maker/), I could probably make a video of it going over exactly what it involves, but the last video on the topic was just a few months back. To cover it on the channel (and have KZbin algorithm support), it's basically got to be about 5 minutes worth of content, with 8-10 being preferable. I just can't fathom how to turn that news into 5+ minutes of content. I could use KZbin shorts I guess... but do you guys really want me using their TikTok clone?
@riufq3 жыл бұрын
@@gamefromscratch it's ok. keep it simple.
@mibaatwork3 жыл бұрын
What is about Rust Programming in Godot now?
@jakecb63963 жыл бұрын
:(
@moose43h3 жыл бұрын
This is not gdscript ,right?
@snesmocha3 жыл бұрын
It’s basically an extension system that let you use another programming language
@sphixy85773 жыл бұрын
No its c++
@fakeusertas7213 жыл бұрын
flax -> C++ is more really scare right now, randomly C++ dead
@WerIstWieJesus3 жыл бұрын
This would be much cleaner in pure C. No need for C++. You can always encapsulate C in C++ classes if you really want.
@peterjohnson94383 жыл бұрын
It would not be cleaner, it would be a long mess of complex function and struct names because of the internal structure of Godot. There are places where a C API is better. This ain't it, chief.
@techpriest47873 жыл бұрын
There is one native language to rule them all: Rust is C/C++/C#/F#