MCPcopy Create free account
hub / github.com/IppClub/Dora-SSR / render

Method render

Source/Node/Node.cpp:1567–1587  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

1565class ProjectNode : public Node {
1566public:
1567 virtual void render() override {
1568 Size viewSize = SharedView.getSize();
1569 float viewPort[4]{0, 0, viewSize.width, viewSize.height};
1570 float winX, winY, winZ;
1571 if (project(_nodePoint.x, _nodePoint.y, 0, getWorld(), SharedDirector.getViewProjection(), viewPort, &winX, &winY, &winZ)) {
1572 Size winSize = SharedApplication.getWinSize();
1573 winX = winX * winSize.width / viewSize.width;
1574 winY = winY * winSize.height / viewSize.height;
1575 if (SharedView.getName() != "UI"_slice) {
1576 winY = winSize.height - winY;
1577 }
1578 _convertHandler(Vec2{winX, winY});
1579 } else {
1580 _convertHandler(Vec2::zero);
1581 }
1582 WRef<Node> wref(this);
1583 schedule([wref](double deltaTime) {
1584 if (wref) wref->removeFromParent();
1585 return true;
1586 });
1587 }
1588 CREATE_FUNC_NOT_NULL(ProjectNode);
1589
1590protected:

Callers

nothing calls this directly

Calls 6

scheduleFunction · 0.85
getWinSizeMethod · 0.80
removeFromParentMethod · 0.80
projectFunction · 0.70
getNameMethod · 0.65
getSizeMethod · 0.45

Tested by

no test coverage detected