Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/unity3d/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C++ 添加子项(类似于引擎)_C++_Unity3d - Fatal编程技术网

C++ 添加子项(类似于引擎)

C++ 添加子项(类似于引擎),c++,unity3d,C++,Unity3d,(对于定制引擎)一个简单的问题,我想知道这样添加一个孩子是否有好处: `myNode.transform.parent = newParent` // unity like 与此相反: `myNode.transform.AddChild(newChild)` 或者这只是一个偏好的问题 就我而言,我觉得一个setter会做一些背景工作很奇怪,比如从它以前的父-子上下文中删除自己 谢谢 > P>他们可能在C++后端使用AdHoad方法来进行添加。 Unity的核心引擎是用C++编写的,C语言只

(对于定制引擎)一个简单的问题,我想知道这样添加一个孩子是否有好处:

`myNode.transform.parent = newParent` // unity like
与此相反:

`myNode.transform.AddChild(newChild)`
或者这只是一个偏好的问题

就我而言,我觉得一个setter会做一些背景工作很奇怪,比如从它以前的父-子上下文中删除自己


谢谢

> P>他们可能在C++后端使用AdHoad方法来进行添加。 Unity的核心引擎是用C++编写的,C语言只是它们使用的脚本层。Unity将其后端方法注册到前端方法和属性。当有人使用该属性或方法时,将调用后端实现。Unity的所有东西都不是这样,Unity的UI主要是C#,并且它是开源的,以防您好奇:

下面的一篇文章可能会澄清哪些方面是最好的选择,尽管在实践中,它通常归结为偏好:

但总体而言: 方法表示操作,属性表示数据

另一位用户提出了类似的问题:

如果我的回答不清楚的话,就用尖峰来回答

此外,如果您对Unity如何调用其后端方法感到好奇,这可能会澄清问题:


希望这会有帮助

> P>他们可能在C++后端使用AdHoad方法来进行添加。 Unity的核心引擎是用C++编写的,C语言只是它们使用的脚本层。Unity将其后端方法注册到前端方法和属性。当有人使用该属性或方法时,将调用后端实现。Unity的所有东西都不是这样,Unity的UI主要是C#,并且它是开源的,以防您好奇:

下面的一篇文章可能会澄清哪些方面是最好的选择,尽管在实践中,它通常归结为偏好:

但总体而言: 方法表示操作,属性表示数据

另一位用户提出了类似的问题:

如果我的回答不清楚的话,就用尖峰来回答

此外,如果您对Unity如何调用其后端方法感到好奇,这可能会澄清问题:


希望这会有帮助

另一个答案非常好,但我只是想补充一点说明,为什么要使用
addChild(…)
.parent=…

它基本上可以归结为如何构建代码,如果您创建父实例,那么当它绘制其位置时,它可以只获取其父实例,然后相对于该父实例绘制它

如果您执行了
addChild(…)
系统,则父级必须告诉子级其位置在哪里(或者您必须有一个到父级的链接)才能将其相对绘制


这只是一个原因,我相信还有很多原因,但这主要取决于偏好。

另一个答案非常好,但我只是想补充一点解释,为什么要使用
addChild(…)
.parent=…

它基本上可以归结为如何构建代码,如果您创建父实例,那么当它绘制其位置时,它可以只获取其父实例,然后相对于该父实例绘制它

如果您执行了
addChild(…)
系统,则父级必须告诉子级其位置在哪里(或者您必须有一个到父级的链接)才能将其相对绘制


这只是一个原因,我相信还有很多原因,但这主要取决于偏好。

Er…你从哪里得到
AddChild()
?这不是文档中列出的方法-我所看到的唯一实例是作为一个扩展方法使用的,它只执行第一行…这是一个受unity启发的定制引擎,这就是为什么找不到AddChild()。我只是想知道一个节点(或游戏对象)为什么可以设置自己的父节点,而不是让另一个节点添加或分离它的childrend。呃……你从哪里得到
AddChild()
?这不是文档中列出的方法-我所看到的唯一实例是作为一个扩展方法使用的,它只执行第一行…这是一个受unity启发的定制引擎,这就是为什么找不到AddChild()。我只是想知道为什么一个节点(或游戏对象)可以设置它自己的父节点,而不是让另一个节点添加或分离它的childrend。我怀疑Unity的脚本层隐藏了一些东西,因为我没有,我正在寻找最符合逻辑的方法。谢谢!我将查看您链接的属性与方法文档。我怀疑Unity的脚本层隐藏了一些东西,因为我没有,我正在寻找最符合逻辑的方法。谢谢!我会看看你链接的属性和方法文档。我感觉到你了。Inherence系统刚刚启动,但我喜欢节点的变换在其父节点上有一个指针,所以我想您描述的第一部分更好。事实上.parent=。。。会有副作用,困扰着我,但是的,所有这些肯定是解释在属性与方法的东西,我觉得你。Inherence系统刚刚启动,但我喜欢节点的变换在其父节点上有一个指针,所以我想您描述的第一部分更好。事实上.parent=。。。会有副作用困扰我,但是是的,所有这些肯定会在属性与方法的内容中解释