ROBLOX Cframe我该怎么办?

时间:2010-11-30 00:08:57

标签: roblox

如何在ROBLOX上Cframe任何类型的砖块![替代文字] [1]

14 个答案:

答案 0 :(得分:2)

Workspace.Brick.CFrame = CFrame.new(0, 0, 0)

这使得Brick in Workspace的CFrame值为0,0,0(在基数内)

Workspace.Brick.CFrame = Workspace.Brick.CFrame * CFrame.Angles(0, 0, 0)

这使得Brick in Workspace有一个倾斜。使用math.pi * x,其中每个x = 1将砖块向该方向倾斜1弧度。

答案 1 :(得分:1)

使用CFrame库和对象成员来控制CFrame值。例如:

CFrame.new()

将创建一个新的CFrame,其矩阵设置为单位矩阵。您可以通过传入3个原始X,Y,Z值或Vector3值来将位置设置为CFrame。

CFrame.new(Vector3.new(0, 5, 0) == CFrame.new(0, 5, 0)

还可以向矢量旋转。

CFrame.new(Vector3.new(0, 5, 0), CFrame.new(0, 2, 0))

通过使用CFrame.Angles功能,您可以创建用于旋转CFrame的euler角度。

CFrame.new() * CFrame.Angles(math.rad(20), 0, 0)

请注意,使用euler角度时,角度以弧度表示,因此为了将弧度转换为度数,我在Lua中使用了math.rad函数。还有CFrame值的成员,因此您可以从CFrame中检索其旋转。

CFrame.new():toEulerAnglesXYZ()

对于位置,还有“p”等属性,CFrame指向的向量也有“lookVector”。

CFrame.new().p
CFrame.new().lookVector

可以使用组件访问矩阵本身。

CFrame.new():components()

还可以使用对象和世界坐标来更改CFrame值。

CFrame.new():toObjectSpace(CFrame.new()) -- a tad pointless

您也可以将算术运算应用于CFrame(以及CFrames / Vector3s彼此)

CFrame.new() + CFrame.new(0, 2, 0)

这只是我头脑中的一些初始信息,因此无法保证此信息的准确性。查看ROBLOX Wiki以获取更多信息。

答案 2 :(得分:1)

首先,去你的地方然后点击RobloxStudio(左边的黑色按钮,上面写着“iii”),然后点击工具箱按钮(带有2个工具,橙色和蓝色),然后点击“向下箭头”(黑色) )然后,单击免费模型。之后单击搜索栏并输入“编辑cframe”然后单击一个空白点,然后单击“1”,但首先放入至少2块砖,然后单击一块砖并使用显示up.thats all的gui。

答案 3 :(得分:1)

  

Game.Selection:Get()1 v.CFrame =   v.CFrame + Vector3.new(0,0,0)

这是我更喜欢使用的,虽然你可以改变/添加东西,如EulerAnglesxyz()

看起来像这样:

  

Game.Selection:Get()1 v.CFrame =   v.CFrame + Vector3.new(0,0,0)和v.CFrame = v.CFrame + EulerAnglexXYZ(0,0,0)

如果我可能不正确,请纠正我。 谢谢, 的iTerm

答案 4 :(得分:0)

请参阅http://wiki.roblox.com/index.php/CFrame_positioning

game.Workspace.Brick.CFrame = CFrame.new(0, 10, 0)用于定位

game.Workspace.Brick.CFrame = Workspace.Brick.CFrame * CFrame.fromEulerAnglesXYZ(0, 0, 0)倾斜

只需编辑()

之间的值

答案 5 :(得分:0)

最简单的cframe方法是通过一个cframe工具(在免费模型或目录上获取一个,请注意一些可能被感染),但是有一些问题,cframe工具只适用于锚定的砖块,并且它们不要告诉你是否要进入砖块内部,使用命令栏进行cframing将允许你进行cframe但没有砖块进入其他砖块。我建议使用cframe工具,因为你可以轻松地使用它,并且构建模式的人很容易,而高级玩家可以玩这种有趣的东西。此外,cframe工具有更多的选项,你可以看到它的程度和位置,随意,不打字,你可以进入其他砖块,并且很容易看出它是否重叠。只是取消选择,你会看到。使用CFRAMER工具,而不是动画师!机械方面存在巨大差异,而且它将在合理的情况下发挥作用。我从来没有让动画师合作。 :P

答案 6 :(得分:0)

只需在你的游戏中插入一块砖。然后转到免费模型。然后选择一个cframe或cframe工具。然后选择一个然后抓住它。按下砖然后它取决于你得到的cframe工具的类型。 ; d

答案 7 :(得分:0)

我找到了一种非常简单的CFrame砖块方法。打开ROBLOX工作室,转到View>输出和视图>工具栏>命令。现在,在Workspace中选择您希望CFrame的砖块。在命令栏中,放置以下脚本:

v = Game.Selection:Get()[1] v.CFrame = v.CFrame + Vector3.new(0,0,0)

输入它。将最后三个数字(0,0,0)更改为您希望砖块移动的螺柱。第一个数字是左右,第二个是上下,第三个是近距离(深度)。

这就是我CFrame的原因,原因有多种:

  • 很快
  • 如果你把变量设为非常小的小数,你就可以非常精确地放置砖块。
  • 您不必经常在脚本中重新输入砖块的名称,只需选择想要CFrame的砖块。

                                                                   ~Davillion
    

答案 8 :(得分:0)

嗯,这是除了使用工具之外最简单的方法之一。您可以在Roblox Studio中打开命令栏,甚至可以在构建中打开。并输入此

x = Game.Selection:Get()[1] x.CFrame = x.CFrame + Vector3.new(0, 0, 0)

(0, 0, 0)更改为您想要的位置

示例:

(1, 2, 3)

希望我帮忙,

〜TheBinkyp

答案 9 :(得分:0)

酷是错的。

Workspace.Brick.CFrame = CFrame.new(0, 0, 0) - 基本上更改名为Brick的工作区中零件的位置。使用CFrmae这很好,因为有了它,你可以浏览对象。

Workspace.Brick.CFrame = Workspace.Brick.CFrame * CFrame.Angles(0, 0, 0) - 使用新的方式:3,这将在x Brick

的轴上在名为Radians *x = your amount的工作区中旋转零件

答案 10 :(得分:0)

这是我制作的C-Frame工具包: http://www.roblox.com/Bubbas-C-frame-Tool-Pack-item?id=41704811 这些工具非常自我解释。

答案 11 :(得分:0)

Workspace.Brick.CFrame = CFrame.new(0,0,0) - 基本上更改名为“Brick”的工作区中零件的位置。使用CFrmae是很好的,因为有了它,你可以通过对象。

Workspace.Brick.CFrame = Workspace.Brick.CFrame * CFrame.Angles(0,0,0) - 使用新的方式:3,这将在工作区中将名为“Brick”的零件旋转x轴x =您的金额 你应该这样做

答案 12 :(得分:0)

您可以通过代码设置砖块的CFrame。您可以将砖的CFrame设置为等于CFrame对象。有关'CFrame'的信息,请访问:'http://dmlc.ml/2016/10/26/a-full-integration-of-xgboost-and-spark.html' 请注意,'CFrame.new()'的坐标和旋转为(0,0,0)。

local cFrameObject = CFrame.new()
brick.CFrame = cFrameObject

另一种影响砖块CFrame的方法是使用ROBLOX Studio插件或使用CFrame工具游戏。

答案 13 :(得分:0)

坐标系(CFrame)是一种表示位置的方法,要使用它,您需要使用Vector3或其他CFrame,可以通过多种方式更改Frame: 1:获取另一个CFrame 您可以将零件的CFrame用作参考,如果要添加一些数学运算以将其更改为所需的CFrame

reference = workspace.InsertYourPartHere
part = Instance.new("Part",workspace)
part.CFrame = reference.CFrame + Vector3.new(0,(reference.Size.Y / 2),0)

2:制作一个新的CFrame 使用Vector3和CFrame,您可以更改零件的位置

part = Instance.new("TrussPart",workspace)
part.CFrame = CFrame.new(Vector3.new(math.random(0,2487),math.random(0,8),math.random(0,2487)))

所以这就是CFrame的基础。...还有更多的CFrame函数,例如CFrame.Angles可以自我解释