首页 > 其他分享 >Unity可确定性定点数(软浮点)物理引擎

Unity可确定性定点数(软浮点)物理引擎

时间:2023-07-30 14:44:17浏览次数:40  
标签:浮点 Unity 引擎 确定性 定点数 物理

Unity自带的物理引擎,都是用的硬件浮点,硬件浮点有个特点,就是不同CPU,实现的标准可能不一样,导致会有误差。

也就是说,Unity自带的物理引擎,在不同平台上,模拟的效果可能会不一样。而且就算是同一机器,也可能因为浮点造成的误差,导致每次模拟的结果都不一样。

解决方法就是用软件浮点(定点数)来代替硬件浮点,不同平台,浮点的实现都是统一的方式,而且每次计算结果都是唯一,不存在误差,确定就是定点数性能要比浮点数差。

 

物理引擎:

  • Box2D:Unity自带的2D物理引擎,不确定性
  • Physx:Unity自带的3D物理引擎,不确定性
  • Bullet:Unity商店有人移植了一款支持U3D的版本,可能支持确定性模拟?还没测试:Bullet Physics For Unity | 物理 | Unity Asset Store
  • Havok:Havok为Unity的DOTS做的新物理系统,可能支持确定性模拟?
  • Unity Physics:Unity专为DOTS做的新物理系统,仅可在ECS模式用,在同一机器上是确定性的,但是在不同机器上还是不确定性,不过有人修改了一版,将浮点换成软浮点,实现跨平台确定性,论坛:Reddit - 深入了解任何内容  Github:Kimbatt/soft-float-starter-pack: Software implementation of floating point numbers and operations (github.com)
  • BEPUphysicsint v1:定点数C#物理引擎,目前用的人最多,但是好多年没更新了。最新的v2版据说因为用了.NET CLR导致跟Mono和IL2CPP的Unity兼容性不好。缺点是纯C#,没U3D组件支持

     

标签:浮点,Unity,引擎,确定性,定点数,物理
From: https://www.cnblogs.com/jeason1997/p/17591414.html

相关文章

  • unity MVC
         ......
  • Unity UGUI的Outline(描边)组件的介绍及使用
    UnityUGUI的Outline(描边)组件的介绍及使用1.什么是Outline(描边)组件?Outline(描边)组件是UnityUGUI中的一种特效组件,用于给UI元素添加描边效果。通过设置描边的颜色、宽度和模糊程度,可以使UI元素在视觉上更加突出。2.Outline(描边)组件的工作原理Outline(描边)组件通过在U......
  • Unity UGUI的Outline(描边)组件的介绍及使用
    UnityUGUI的Outline(描边)组件的介绍及使用1.什么是Outline(描边)组件?Outline(描边)组件是UnityUGUI中的一种特效组件,用于给UI元素添加描边效果。通过设置描边的颜色、宽度和模糊程度,可以使UI元素在视觉上更加突出。2.Outline(描边)组件的工作原理Outline(描边)组件通过在......
  • 浮点数
    1、介绍一般,在计算机中的整数数值可以基于补码规则进行表示为比特,而小数择是基于浮点数规则表示为比特。浮点数规则,本质上是科学计数法的思想,将十进制小数转为二进制数,对一组连续比特位划分,分别表示该二进制数的符号位、指数和底数信息。注意,在固定长度的比特位中,符号位一般不变,......
  • CommunityToolkit.Mvvm
    包是.NET提供的一个现代、快速且模块化的MVVM库。此包面向.NETStandard,因此可在任何应用平台上(UWP、WinForms、WPF、Xamarin、Uno等)和运行时上(.NETNative、.NETCore、.NETFramework或Mono)使用。其他MVVM库有:Prism,常用于WPF应用。Messenger发送消息接口IMessenger......
  • Unity学习
    Unity学习1常用快捷键alt+鼠标左键:以某个物体为中心旋转视角鼠标左键+w/s/a/d:视角移动F:相机聚焦物体Q/W/E/R/T/Y:左上角工具栏工具2文件资源2.1工程目录Assets目录:主要存放资源文件,该文件中的内容会在unity项目栏中显示。2.2文件类型FBX文件:3D模型文件,其中包括了......
  • Unity Recorder
    UnityRecorder录制高清视频由于经常开发过程需要经常录制高清Unity视频点击StartRecording可以直接录制运行的Game窗口默认比例就是1920*1080,不需要最大化运行可以无损录制,体积过大一、使用Recorder视频录制参数详解二、录制无损视频后压缩体积无损录制设置......
  • Unity3D___微信小游戏常用API总结
    获取用户信息游戏初始化WX.InitSDK((code)=>{//打印屏幕信息varsystemInfo=WX.GetSystemInfoSync();Debug.Log($"{systemInfo.screenWidth}:{systemInfo.screenHeight},{systemInfo.windowWidth}:{systemInfo.windowHeight},......
  • Unity 创建自定义包
    1.包的类型(1)嵌入式包(包文件夹在项目文件夹下,在其下的Packages子文件夹中)(2)本地包  (包文件夹在项目文件夹外,路径不固定)2.创建“本地包”的步骤官方文档: 创建自定义包文件示例1:package.json文件,如下图所示:{"name":"com.example.di......
  • Unity实现camera数据注入RMP推送或轻量级RTSP服务模块
    技术背景随着技术的不断进步和应用的不断深化,Unity3DVR应用的前景非常广阔,它广泛应用于教育、医疗、军事、工业设计、虚拟数字人等多个领域。教育领域:Unity3DVR技术可以用来创建虚拟现实教室,让学生能够身临其境地体验课程内容,提高学习效果和兴趣;医疗领域:Unity3DVR技术可以用来创......