-
Notifications
You must be signed in to change notification settings - Fork 1.9k
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
[3.8.4] [native] Fix that 2d object's world transform not being updated if modifying local position/rotation/scale in Director.EVENT_AFTER_DRAW callback. #17555
Conversation
…ed if modifying local position/rotation/scale in Director.EVENT_AFTER_DRAW callback.
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.
LGTM
3 file(s) reviewed, no comment(s)
Edit PR Review Bot Settings
@cocos-robot run test cases |
Interface Check ReportThis pull request does not change any public interfaces ! |
@dumganhar, Please check the result of
Task Details
|
@dumganhar, Please check the result of
Task Details |
@cocos-robot run test cases |
@dumganhar, Please check the result of
Task Details
|
@dumganhar, Please check the result of
Task Details
|
@cocos-robot run test cases |
@dumganhar, Please check the result of
Task Details
|
@dumganhar, Please check the result of
Task Details |
And run performed functions at the end of Engine::tick instead of Director::AfterPersent.
Added testcase:
cocos/cocos-test-projects#881
cocos/cocos-test-projects#882
Reported at : https://forum.cocos.org/t/topic/159379/380?u=dumganhar
Reason
Review the code in director.ts:
Re: #
Changelog
Continuous Integration
This pull request:
Compatibility Check
This pull request:
Greptile Summary
This pull request addresses an issue with 2D object world transforms not updating correctly when modified in the Director.EVENT_AFTER_DRAW callback, by adjusting the timing of transform updates and async task execution.
Batcher2d::handleComponentDraw
innative/cocos/2d/renderer/Batcher2d.cpp
to checknode->isTransformDirty()
for more accurate transform updatesnative/cocos/bindings/manual/jsb_scene_manual.cpp
to adjust async task execution timing_scheduler->runFunctionsToBePerformedInCocosThread()
call at the end ofEngine::tick()
innative/cocos/engine/Engine.cpp
for improved async task handling