Giter VIP home page Giter VIP logo

Comments (8)

DmitriySalnikov avatar DmitriySalnikov commented on May 29, 2024 1

immediately after downloading

Actually DD3D really connects immediately after loading, but GDScript cannot correctly update the list of singletons, which is why it is impossible to use DD3D in the usual way without restarting.

In the editor, you can create such a script and check whether there is an addon sington or not (Ctrl + Shift + X, or File - Run):

@tool
extends EditorScript

func _run():
	print(Engine.has_singleton(&"DebugDraw3D"))
	Engine.get_singleton(&"DebugDraw3D").draw_aabb(AABB(Vector3.ZERO, Vector3.ONE), Color(0,0,0,0), 10)

After installing the addon and executing this script, a cube will appear in the 3D editor.

in a project with no 3d scenes

3D editor is also a 3D scene and a 3D world in which my addon exists and is updated every frame. And this 3D world always exists in the editor.

from godot_debug_draw_3d.

DmitriySalnikov avatar DmitriySalnikov commented on May 29, 2024 1

is there a way to turn it off in the editor?

Not yet. But I will add a property for the default debug state to the project settings.

As a workaround, you can use this script:
disable_dd3d.gd

@tool
extends Node

func _ready():
	if Engine.is_editor_hint():
		DebugDrawManager.debug_enabled = false

Then add it to Project Settings - Autoload.

from godot_debug_draw_3d.

morganholly avatar morganholly commented on May 29, 2024 1

yea seems to have fixed it. i don't see it in the plugins list but it works when the game is launched and there's no constant gpu load in the editor

from godot_debug_draw_3d.

DmitriySalnikov avatar DmitriySalnikov commented on May 29, 2024

Confirmed. As far as I understand, the problem at the moment is that my code updates 3d objects constantly.

Without DD3D:

Godot_v4.1.1-stable_win64_uM83IdD6jn.mp4

With DD3D:

Godot_v4.1.1-stable_win64_rj4T7n6TPx.mp4

You can confirm this by simply turning on the spinner in the editor settings:
image

I also have an increased load on the GPU up to 30-40% in an almost empty viewport. But this percentage directly depends on the GPU frequency and VRAM frequency, which are at low values. Therefore, with such a "load", the fans of the video card do not even turn on and I did not notice that the editor window is constantly updated 😅.

I will try to remove the load on the GPU in empty scenes, but in scenes where @tool and draw_* will be used, updates will still be every frame.

from godot_debug_draw_3d.

morganholly avatar morganholly commented on May 29, 2024

i'm just confused why it would happen in a project with no 3d scenes, in the assetlib tab, immediately after downloading

from godot_debug_draw_3d.

morganholly avatar morganholly commented on May 29, 2024

is there a way to turn it off in the editor? i don't have any tool scripts

from godot_debug_draw_3d.

DmitriySalnikov avatar DmitriySalnikov commented on May 29, 2024

Can you test the fix using binaries from here?

It also contains a new setting debug_draw_3d/settings/initial_debug_state

from godot_debug_draw_3d.

morganholly avatar morganholly commented on May 29, 2024

i will try it out now

from godot_debug_draw_3d.

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.