godot-docs
godot-docs copied to clipboard
PoolVector3Array is missing from Mono
Your Godot version: v3.4.4.stable.mono.offical[419e713a2]
Issue description: I was looking at extracting triangle/vertex information from meshes, and while looking trough the docs, I found ArrayMesh.GetFaces() which returns a PoolVector3Array (https://docs.godotengine.org/en/stable/classes/class_poolvector3array.html). However, when I wanted to use that class in C#, it doesn't exist. Instead, there Vector3[] is used.
I recommend, that a small section is added to the docs that tells you that.
E.g. The class PoolVector3Array does not exist in the C# Mono environment. Vector3 arrays are used instead.
URL to the documentation page (if already existing): https://docs.godotengine.org/en/stable/classes/class_poolvector3array.html
Isn't that the case for all Pool*Array types (and Packed*Array in master)?
Probably. I only noticed it because of my experiment. I haven't done a lot with Godot yet.
I recommend, that a small section is added to the docs that tells you that. E.g.
The class PoolVector3Array does not exist in the C# Mono environment. Vector3 arrays are used instead.
I think it's already mentioned: 3.4 docs (source) (it seems unchanged in the newer versions).
Is it not enough? If not, any improvement suggestions?
@kleonc well I found awkward to be missing. I think it would be good to add, as long as there is no dedicated C# Docs. I might not be the only developer who wonders about it. Knowing the return type of a function is important, so you know how to further process the data for your needs.
I think it would be good to add, as long as there is no dedicated C# Docs.
C# class reference is documented within the assemblies. But yeah, there's no official on-line/in-editor class reference for C# (however here's example of unofficial one).
And to be clear: do you suggest to add a note about C# to the GDScript's class reference? For example something like:
Note: In C# there's no PoolVector3Array class, Vector3[] is used instead.
in here?
Knowing the return type of a function is important, so you know how to further process the data for your needs.
Again, it's documented within the assemblies. You can check the return type within your IDE (at least you should be able to do so):

"in here?" yes.
Good to know there is unofficial C# Docs :)
and yeah, I just used Godot with VSCode (because it feels better than the built-in editor), but didn't setup the project fully, because I wasn't aware you could do that properly. That way I didn't have Godot assemblies, which showed me anything.
Plus when going after the tutorial on https://gist.github.com/paulloz/30ae499c1fc580a2f3ab9ecebe80d9ba to do that, the menus aren't showing up, but that probably should be another bug report 😄.

I created a bug report for that :) https://github.com/godotengine/godot/issues/60940
This is already documented in the C# API differences to GDScript page.
It may still be worth it to add a mention to this in the Pool*Array classref (somewhat related discussion in https://github.com/godotengine/godot/pull/70852).