-
Notifications
You must be signed in to change notification settings - Fork 99
[F3D] Serializable node library format concept #514
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
base: main
Are you sure you want to change the base?
Conversation
Dragorn421
left a comment
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
looks very interesting!
I'm surprised this is faster than a library blend, how did you time that?
|
@Dragorn421 At least with my latest commit and in blender 4.1 oot level imports go by quickly (tho i didnt time it but i vaguely know how long main takes) |
|
I figured out a way to boost performance, and its literally deleting the existing node group if we are gonna update materials anyways lol |
|
Timings for importing OoT's deku tree map: much better! wouldn't be a blocker for merging, but doesn't really back "it's faster" |
uh, still? guess I'll take it, material creation FEELS faster tho, maybe I just imagined it |
|
Timing the "create f3d mat" operator (ignoring the first time clicking the button): |
|
methodology:
diff --git a/fast64_internal/f3d/f3d_material.py b/fast64_internal/f3d/f3d_material.py
index 56e6113b..7db70178 100644
--- a/fast64_internal/f3d/f3d_material.py
+++ b/fast64_internal/f3d/f3d_material.py
@@ -2625,8 +2625,16 @@ class CreateFast3DMaterial(Operator):
if obj is None:
self.report({"ERROR"}, "No active object selected.")
else:
+
+ import time
+ start = time.time()
+
preset = getDefaultMaterialPreset("Shaded Solid")
createF3DMat(obj, preset)
+ end = time.time()
+
+ print("mat create time (s):", end-start)
+
self.report({"INFO"}, "Created new Fast3D material.")
return {"FINISHED"}
|
Keeps track of actual name, finally respecting any attempts at a user using the same names. Remove unused fast64 node groups. Add "(Fast64)" to node group names
|
Anecdotally, this feels a lot faster on 4.5 (ignore previous statement I am dumb) |
jesusyoshi54
left a comment
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I'll leave it up to someone OOT to merge based on their feelings of the value of speed
Dragorn felt it wasn´t worth it, so we shouldn´t merge unless everyone agrees. I like it for streamlined upgrades, the real diff and letting you make changes in any version. Dragorn dislikes it because the speed is either equal to or slower. |
This would allow fast64 to have 0 binary blobs (outside images anyways).