C# ScreenPointToRay,What';功能的背后是什么?
我想知道摄像机背后的代码是什么:屏幕指针可能是Unity或ROBLOX 我的情况是,我在世界空间中有一个位置,相机的视口大小, 我想有一个函数,它可以显示屏幕指针, 我假设创建这个函数只需要这两个参数,但我不知道如何创建 有人能告诉我这个吗?中有一节介绍了您要查找的函数: 也有一个部分具有自己的功能C# ScreenPointToRay,What';功能的背后是什么?,c#,unity3d,lua,roblox,C#,Unity3d,Lua,Roblox,我想知道摄像机背后的代码是什么:屏幕指针可能是Unity或ROBLOX 我的情况是,我在世界空间中有一个位置,相机的视口大小, 我想有一个函数,它可以显示屏幕指针, 我假设创建这个函数只需要这两个参数,但我不知道如何创建 有人能告诉我这个吗?中有一节介绍了您要查找的函数: 也有一个部分具有自己的功能 我希望这对你有帮助 有几种方法可以进行此计算。此版本仅适用于透视摄影机,但也可以修改为适用于正交摄影机。不幸的是,我无法共享代码,但我会尽力解释 从相机中,需要通过反转camera.projecti
我希望这对你有帮助 有几种方法可以进行此计算。此版本仅适用于透视摄影机,但也可以修改为适用于正交摄影机。不幸的是,我无法共享代码,但我会尽力解释
如果您试图在Unity API之外执行此操作,则还需要创建Matrix4x4.MultiplyPoint函数。您可以检查,它使用Unity相机上可用的矩阵为计算着色器内的所有像素创建光线。我知道它的功能,但我想知道函数背后的内容,例如,我不想使用camera:screenpointoray。我希望有一个自己的函数可以使用它来实现灵活性:
code本地函数worldCameraPoint(cframe,viewportSize,mousePoint)--世界空间坐标,分辨率,基于分辨率的鼠标位置--screenpointtoray return ray end