Comments (6)
I had some trouble using the MRP locally, so I attempted to reproduce the bug in a new project using godot-cpp, and, unfortunately, I was unable to. I've attached my new project - perhaps, you can help me modify it in order to show the bug?
Thanks for trying this out! I tested your cpp project and it does seem to be working as intended. Let me take this info back to the GDExt-rust people and see if there's a discrepancy on the rust side making it behave differently than godot-cpp
from godot.
@Bromeon Can you check if this is a bug in the Rust bindings or something we broke in Godot 4.3 that affects the Rust bindings? As noted above, so far we haven't been able to reproduce it with godot-cpp. Thanks!
from godot.
CC @godotengine/gdextension @godotengine/gdscript
from godot.
Thanks!
I had some trouble using the MRP locally, so I attempted to reproduce the bug in a new project using godot-cpp, and, unfortunately, I was unable to. I've attached my new project - perhaps, you can help me modify it in order to show the bug?
I tried the project in Godot 4.2.2, and the CustomResource
resources stayed as CustomResource
s and had the expected methods when running the project. Then I tried in Godot 4.3-beta2, and even edited the "SomeNode" in the editor, and saved the project a bunch of times, but every time I ran it, it also had the expected methods and I didn't see the resources change type.
from godot.
In Godot 4.3 beta 2:
- when I run my game, CustomResource acts exactly like MyResource and does not have any of my custom behavior implemented in the GDScript.
- when I save and close Godot, the
.tscn
file serializes the resource asMyResource
with no reference to theCustomResource
GDScriptIn Godot 4.2 stable:
- when I run my game, CustomResource behaves as expected
- when I save and close Godot, the
.tscn
contains ascript = ExtResource()
pointing the resource to the appropriate GDScript
I downloaded your ZIP file, but couldn't quite follow these instructions. Even with 4.2.2, I get
SCRIPT ERROR: Invalid call. Nonexistent function 'update' in base 'MyResource'.
at: _process (res://broken/broken.gd:8)
Are the initial scene files serialized correctly?
I would appreciate if you could reduce this example further, so that I can simply start it with:
$GODOT4_BIN --headless
and it would output "OK" or "FAIL" on the console. Then I wouldn't need to open the editor, save scenes, check diffs etc. Otherwise it's extremely time-consuming to bisect a larger range of versions.
Would that be possible? I'll only get around to look into it next week, so take your time.
from godot.
With Bromeon's guidance, I changed the dependencies in the Cargo.toml
so that I could build a version of the extension that would work in both Godot v4.2.2 and Godot v4.3-beta2, for the purpose of git bisect
ing to the commit that introduced the issue:
# Changed "api-custom" to "api-4-2"
godot = { git = "https://github.com/godot-rust/gdext", branch = "master", features = ["api-4-2"] }
However, when I tried in both Godot v4.2.2 and Godot v4.3-beta2, I was unable to reproduce the issue.
Perhaps the build was created on an older commit of the Rust bindings that had a bug?
@aekobear Can you try rebuilding the extension with the latest master
of the Rust bindings and "api-4-2"
and see if you're still experiencing the issue?
UPDATE: Here is a ZIP with the libextension.so that I built for Linux, in case anyone wants to try dropping that into the MRP.
from godot.
Related Issues (20)
- Modifying Pinned Points of `SoftBody3D` is broken HOT 3
- converting a CPUParticles3D to GPUParticles3D often crashes godot on Android (PowerVR gpu)
- Parser Error: Native class "EditorSpinSlider" cannot be constructed as it is abstract. HOT 3
- platform differences in rendering openXRCompositionLayers with Hole Punch feature
- Inconsistent behavior when undoing animation bezier movements upon selection of different animations HOT 1
- Signal 11 crash with no debug info in backtrace HOT 21
- Some weird behaviour involving CanvasLayer, Viewport and World2D HOT 3
- Round primitive meshes contain gaps. HOT 1
- Fullscreen mode's border color does not update when transparent background is disabled HOT 4
- FileSystem shows custom Resource icon of first external dependancy instead of correct icon HOT 3
- MultiMesh custom data bits are not accurate HOT 2
- Resource (re)importing speed is affected by editor framerate, leading to slow import speeds when the window is unfocused
- LineEdit sometimes does not display the last character
- ShapeCast3D detects colliders behind it HOT 5
- Log chinese error. HOT 3
- UV Map Node Ignored in GLTF/GLB Import HOT 2
- Main submenus are all black sometimes (XWayland windows, Nvidia) HOT 3
- PhysicsShapeQueryParameters3D's exclude array seems to be ignored in PhysicsDirectSpaceState3D intersect_shape func. HOT 7
- "Create New Node" dialog main scrolling area is not scrolled up to the top when summoning it HOT 1
- Web audio samples : AudioStreamPlayer's `finished()` signal doesn't emit when sound is done playing. HOT 1
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
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.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from godot.